Programming/Python 18

프로그래머스_신규 아이디 추천

문제 설명 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다. 다음은 카카오 아이디의 규칙입니다. 아이디의 길이는 3자 이상 15자 이하여야 합니다. 아이디는 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.) 문자만 사용할 수 있습니다. 단, 마침표(.)는 처음과 끝에 사용할 수 없으며 또한 연속으로 사용할 수 없습니다. "네오"는 다음과 같이 7단계의 순차적인 처리 과정을 통해 신규 유저가 입력한 아이..

Programming/Python 2022.03.02

프로그래머스_가장 큰 수

문제 설명 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다. 0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요. 제한 사항 numbers의 길이는 1 이상 100,000 이하입니다. numbers의 원소는 0 이상 1,000 이하입니다. 정답이 너무 클 수 있으니 문자열로 바꾸어 return 합니다. 입출력 예 numbers numbers [6, 10,..

Programming/Python 2022.02.22

프로그래머스_K번째 수

문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 길이는 1 이상 100 이하입니다. a..

Programming/Python 2022.02.22

프로그래머스_전화번호 목록

문제 설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 return 하도록 solution 함수를 작성해주세요. 제한 사항 phone_book의 길이는 1 이상 1,000,000 이하입니다. 각 전화번호의 길이는 1 이상 20 이하입니다. 같은 전화번호가 중복해서 들어있지 않습니다. 입출력 예제 ph..

Programming/Python 2022.02.15

프로그래머스_위장

문제 설명 스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다. 예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다. 종류이름 얼굴 동그란 안경, 검정 선글라스 상의 파란색 티셔츠 하의 청바지 겉옷 긴 코트 스파이가 가진 의상들이 담긴 2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수를 return 하도록 solution 함수를 작성해주세요. 제한사항 clothes의 각 행은 [의상의 이름, 의상의 종류]로 이루어져 있습니다. 스파이가 가진 의상의 수는 1개 이상 30개 이하입니다. 같은 이름을 가진 의상은 존재하지 않습니다. clothe..

Programming/Python 2022.02.15

클래스와 객체

클래스 객체지향언어에서 나왔다. 사람은 종족 중 하나이다. 사람 또한 클래스라 할 수 있고, 여기서 서로 다른 특성을 가지며 만들어진게 객체이다. 클래스라는 틀을 사용해서 객체를 만든다. 여기서 틀이라는 것을 사람으로 예를 들면, 주민번호 이름 몸무게 키 라고 보면된다. class 사람: 생성자(): 이름 주민번호 몸무게 def run(): foo = 사람(이름,몸무게,주민번호)

Programming/Python 2022.02.10

파이썬 내장 함수

abs abs(x)는 어떤 숫자를 입력받았을 때, 그 숫자의 절댓값을 리턴하는 함수이다. all all(x)sms 반복 가능한(iterable) 자료형 x를 입력 인수로 받으며, x의 요소가 모두 참이면 True, 거짓이 하나라도 있으면 False를 리턴한다. ※반복 가능한 자료형이란 for문으로 그 값을 출력할 수 있는 것을 의미한다. (리스트, 튜플, 문자열, 딕셔너리, 세트) >>> all([1, 2, 3]) True any any(x)는 반복 가능한(iterable) 자료형 x를 입력 인수로 받으며, x의 요소 중 하나라도 참이 있으면 True, x가 모두 거짓일 때에만 False를 리턴한다. (리스트 안의 0은 거짓) >>> any([1, 2, 3, 0]) True divmod divmod(a,..

Programming/Python 2022.01.05

오류 예외 처리 기법

try, except문 아래 코드는 오류 처리를 위한 try, except문의 기본 구조이다. try: --- except[발생 오류[as 오류 메시지 변수]]: --- 위 코드에서 [ ] 기호는 괄호 안에 내용을 생략할 수 있다는 표기법이다. 즉, except문은 3가지 방법으로 사용할 수 있다. 1. try, except만 쓰는 방법 try: ... except: ... 이 경우, 오류 종류에 상관없이 오류가 발생하면 except 블록을 수행한다. 2. 발생 오류만 포함한 except문 try: ... except 발생 오류: ... 이 경우, 오류가 발생했을 때 except문에 미리 정해놓은 오류 이름과 일치할 때만 except 블록을 수행한다. 3. 발생 오류와 오류 메시지 변수까지 포함한 exc..

Programming/Python 2022.01.05

__init__.py 의 용도

__init__.py 파일은 해당 디렉터리가 패키지의 일부 임을 알려주는 역할을 한다. 만약 패키지에 포함된 디렉터리에 __init.py 파일이 없다면 패키지로 인식되지 않는다. 아래 코드처럼 game.sound 패키지에서 모든 것(*)을 import하면 echo 모듈을 사용가능할 것 같지만, 오류가 발생한다. >>> from game.sound import * >>> echo.echo_test() Traceback (most recent call last): File "", line 1, in NameError: name 'echo' is not defined 특정 디렉터리의 모듈을 * 을 사용해서 import 할 때는 다음과 같이 해당 디렉터리의 __init__.py 파일에 __all__ 변수를 설정..

Programming/Python 2022.01.04

모듈

모듈이란, 함수나 변수 또는 클래스를 모아놓은 파일이다. 모듈은 다른 파이썬 프로그램에서 불러와 사용할 수 있게끔 만든 파이썬 파일이라고도 한다. 모듈 만들기 아래와 같은 파일 mod1.py를 만들고 디렉터리에 저장하면, 이 mod1.py파일은 모듈이 된다. 즉, 파이썬 확장자 .py로 만든 파이썬 파일은 모두 모듈이다. # mod1.py def add(a, b): return a + b def sub(a, b): return a-b 모듈 사용하기 모듈 mod1.py를 불러오기 위해서 import mod1를 입력해준다. (.py는 붙이지 않는다.) 또한 작성된 모듈과 작성 중인 파일은 동일한 디텍터리에 있어야한다. 여기서 import는 이미 만들어 놓은 파이썬 모듈을 사용할 수 있게 해주는 명령어이다. ..

Programming/Python 2022.01.04