Python/파이썬 문법 5

5. 주요 라이브러리와 문법

1. itertools itertools는 파이썬에서 반복되는 데이터를 처리하는 기능을 포함하고 있는 라이브러리이다. 코딩 테스트에서 가장 유용하게 사용할 수 있는 클래스는 permutations, combinations이다 순열을 사용하려면 from itertools import permutations data = ['A','B','C'] result = list(permutations(data, 3)) 조합을 사용하려면 from itertools import combinations data = ['A','B','C'] result = list(combinations(data, 2)) 처럼 작성하면 된다. 2. heapq heapq는 다익스트라 최단 경로 알고리즘을 포함해 다양한 알고리즘에서 우선순위 ..

4. 입출력

(1) 입력 파이썬에서 입력의 개수 많은 경우에는 import sys sys.stdin.raedline().rstrip() 사용하는데 sys 라이브러리를 사용할 때는 한 줄 입력을 받고 나서 rstrip() 함수를 호출해야 한다. readline()으로 입력하면 입력 후 엔터가 줄 바꿈 기호로 입력되는데, 이 공백 문자를 제거하려면 rstrip() 함수를 사용해야 한다. (2) 출력 + 연산자를 이용하여 문자열과 수를 더하면 오류가 발생한다. answer = 7 print('정답은 ' + answer + '입니다.') //-> 이렇게 출력 시 TypeError 발생 # 변수를 문자열로 바꾸어 출력하면 print('정답은 ' + str(answer) + '입니다.') //-> 정상 출력

3. 함수 안에서 전역 변수 설정 및 람다 표현식

함수 안에서 함수 밖의 변수 데이터를 변경해야 하는 경우가 있는데 이때는 함수에서 global 키워드를 이용하면 된다. a = 0 def func(): global = 0 a += 1 for i in range(10): func() print(a) // -> 10 파이썬에서는 람다 표현식을 이용해서 함수를 매우 간단하게 작성할 수 있다. 특정한 기능을 수행하는 함수를 한 줄에 작성할 수 있다는 점이 특징 def add(a,b): return a+b # 람다 표현식으로 구현한 add() 메서드 print((lambda a, b: a+b)(3,7))

2. 사전 자료형

파이썬의 사전 자료형은 내부적으로 해시 테이블을 이용하므로 기본적으로 데이터의 검색 및 수정에 있어서 O(1)의 시간에 처리할 수 있다. -> 키-값 쌍으로 구성된 데이터를 처리함에 있어서 리스트보다 훨씬 빠르게 동작 data = dict() data['사과'] = 'Apple' data['바나나'] = 'Banana' if '사과' in data: print('have an apple') 키 값만 뽑아서 사용하려면 a = data.keys() 값 데이터만 뽑아서 사용하려면 b = data.values()