728x90
안녕하세요. 개발감자입니다!
코딩 테스트를 준비하면서 <코딩 테스트 합격자되기> 책을 보며 공부하고 있습니다.
책을 보며 공부한 내용을 간단히 정리해보았습니다. 코딩 테스트를 준비하는 다른 분들께 도움이 되었으면 합니다
코딩 테스트 합격자 되기: 파이썬 편 | 박경록 - 교보문고
코딩 테스트 합격자 되기: 파이썬 편 | ★ 코딩 테스트 합격자가 되는 가장 확실한 방법! ★ 프로그래머스 제공, 전문가가 모여 엄선한 빈출 100문제로 철저하게 대비하세요신입 사원 코딩 테스트
product.kyobobook.co.kr
0. 파이썬 기본 문법 정리
- 빌트인 데이터 타입
- 정수형
- 양과 음의 정수, 0을 포함
- 정수형 산술 연산
- a , b = 1, 2 print(a+b, a-b, a//b, a%b) # 더하기, 빼기, 몫, 나머지 print(a**b) # a의 b승
- 정수형 비교 연산
- a, b = 1, 2 print(a == b) print(a != b) print(a > b) print(a < b) print(a >= b) print(a <= b)
- 정수형 논리 연산
- a, b= False, True print(a and b) print(a or b) print(not a)
- 부동소수형
- 소수 저장 시 사용
- 곱하기, 나눗셈, 나머지 연산 시 연산결과가 0.22222222222 이런 식으로 나옴
- 반올림
- a = 0.199 print(round(a,2)) # 0.2
- 정수형
- 컬렉션 데이터 타입
- 뮤터블 객체
- 변경 가능한 객체
- ex. 리스트, 딕셔너리, 셋
- 리스트
- 순서가 있는 자료형
- 인덱싱, 슬라이싱 가능
my_list = [1,2,3,4] my_list.append(2) # 리스트 추가 del my_list[2] # 2번 인덱스 위치의 원소 지우기 temp = my_list[0:2] # 0,1 temp = my_list[-4:-2] #1,2
- 딕션너리
- 키 : 값 형태로 저장하는 해시 테이블로 구현하는 자료형
- 키를 사용하여 값 검색
my_dic = {"apple":2, "banana":3} print(my_dic["apple"]) # 2 my_dic["apple"] = 10 # 수정 del my_dic["banana"] # 키가 바나나인 경우 삭제 > 없으면 예외 발생 key = "apple" if key in my_dic: # 키가 딕셔너리에 있는지 확인
- 이뮤터블 객체
- 변경 불가능한 객체
- ex. 정수, 부동소수점, 문자열, 튜플
- 튜플
- 배열과 사용방법은 비슷
- 한 번 생성 시 삭제 불가
my_tuple = (1,2,3) print(my_tuple[0]) #1 print(my_tuple[0:2]) #1,2 - 문자열과 비슷
- 문자열
- 문자들을 집합의 형태로 구성한 이뮤터블 객체
- 큰따옴표나 작은 따옴표로 감싸 사용 가능
string = "hello" string2 = 'World' string = "He" string += "llo" print(string) # Hello string = string.replace("l", "") print(string) # Heo
- 뮤터블 객체
- 함수
- 함수 정의
- def 라는 예약어를 사용하여 정의
def function (param): return result # 반환 값
- 함수 호출
- result = function(param) # 반환값을 저장
- 람다식
- 함수를 더 간단하게 표현하는 방식
- 익명함수를 만드는 데 사용
- 딱 한 번 실행할 목적으로 사용
lamda x, y: x + y # x,y를 받아서 x+y를 반환하는 람다식 num = [1, 2, 3, 4, 5] squares = list( map (lamda x : x**2, num) ) print(squares) # 1, 4, 9, 16, 25
- 함수 정의
- 코딩 테스트 구현 노하우
- 조기 반환 (early return)
- 코드 실행 과정이 함수 끝까지 도달하기 전 반환하는 기법
- 코드 가독성 ↑
- 예외를 더 깔끔하고 빠르게 처리 가능
- def early_return (possible): if possible : return True # <<< 조기 반환 return False
- 보호 구문 (guard clauses)
- 본격적인 로직을 실행하기 전 예외 처리 코드를 추가
- 조건문 전, 초기 입력값이 유효한지 검사 후 실행
- def guard_clauses (input_value): if input_value is None: # 값이 없으면 종료 return False # ... 이후 로직 진행
- 합성 함수 (composite method)
- 2개 이상의 함수를 활용하여 함수를 추가로 만드는 기법
- 람다식 주로 활용
- 조기 반환 (early return)
감사합니다!
728x90
반응형
'알고리즘' 카테고리의 다른 글
[알고리즘] 스택과 큐의 개념 및 구현 (2) | 2024.04.19 |
---|---|
[알고리즘] 배열의 개념 및 구현 ( 데이터 추가, 삭제 ) (0) | 2024.04.16 |
세그먼트 트리 개념 및 구현 / 코딩테스트 주요 5대 알고리즘 (0) | 2024.01.18 |
이진트리의 개념과 종류 / 전위순회, 중위 순회, 후휘 순회 알아보기 (0) | 2024.01.18 |
[알고리즘 마스터] 14. 트리와 트라이 (0) | 2024.01.16 |