자주 사용되는 표준 입력 방법
사용자로부터 입력을 최대한 빠르게 받아야 할 경우 sys.stdin.readline() 이용
자주 사용되는 표준 출력 방법
프로그램의 흐름을 제어하는 문법
조건문을 이용해 조건에 따라서 프로그램의 로직 설정 가능
코드의 블록을 들여쓰기로 지정
if~ elif ~ else의 형태
비교연산자는 특정한 두 값을 비교할 때 이용
논리연산자: 논리값(True/False) 사이의 연산을 수행할 때 사용
어딘가에 포함되어 있는지 확인하기 위해 in, not in 연산자 사용
아무것도 처리하고 싶지 않을 때 pass 키워드 사용
조건문에서 실행될 소스코드가 한 줄인 경우, 줄바꿈 하지 않고 간략히 표현 가능
if score >= 80: result = “Success”
if score >= 80: result = “Success”
else: result = "Fail"
조건부 표현식(Conditional Expression)은 if~else문을 한 줄에 작성
if가 중간에 들어감
result = "Success" if score >= 80 else "Fail"
조건문 안에서 수학의 부등식 그대로 사용 가능
끊임없이 반복되는 반복 구문인 무한 루프(Infinite Loop) 주의
for 문
continue: 남은 코드의 실행을 건너뛰고, 다음 반복을 진행하고자 할 때 사용
break: 반복문을 즉시 탈출하고자 할 때 사용
함수
함수의 종류
함수 정의
global
람다 표현식
특정한 기능을 수행하는 함수를 한 줄에 작성할 수 있음
입력으로 받을 매개변수를 차례대로 명시해주고, 콜론(:)을 넣어서 함수의 반환값을 명시해주면 됨
print((lambda a, b: a+b)(3,7))
함수 자체를 입력으로 받는 또다른 함수를 사용할 때 사용
함수가 매우 간단하거나 한번 쓰고 말 경우 사용
여러 개의 리스트에 적용
→ [7, 9, 11, 13, 15]
sum(), min(), max()
eval(): 문자열 형태로 주어진 수식을 계산한 결과를 반환해주는 함수
result = eval("(3+5)*7")
print(result)
sorted(): key속성으로 정렬 기준 명시 가능, 기본이 오름차순, 내림차순은 reverse=True
heapq: 힙(heap) 자료구조 제공, 우선순위 큐 기능을 구현하기 위해 사용
bisect: 이진 탐색(Binary Search) 기능 제공
collections: 덱, 카운터 등 유용한 자료구조 포함
math: 펙토리얼, 제곱근, 최대공약수, 삼각함수, 파이 등 필수적인 수학적 기능 제공
참고: 이것이 취업을 위한 코딩 테스트다 with 파이썬 (취업과 이직을 결정하는 알고리즘 인터뷰 완벽 가이드), 유튜브 강의 영상