함수와 람다 표현식global 키워드변수에 global 키워드를 지정하면, 해당 함수에선 지역 변수를 만들지 않고 함수 바깥에 선언된 변수를 바로 참조하게 됨.a = 0def func(): global a # 바깥의 변수 a를 참조한다. a += 1참고: 전역변수로 선언된 리스트 객체의 내부 메서드를 수행하는 것은 오류없이 수행 가능하다.array = [1, 2, 3, 4, 5]def func(): array.append(6) print(array)func()여러 개의 반환값파이썬에서의 함수는 여러개의 반환값을 가질 수 있다. (’패킹’이라고 함. 다시 담는 건 ‘언패킹’.)def operator(a, b): add_var = a + b subtract_var = a..
순열과 조합순열은 순서 상관있음. ‘CAB’ ≠ ‘CBA’순열 라이브러리from itertools import permutationsdata = ['A', 'B', 'C']result = list(permutations(data, 3)) # 모든 순열 구하기 (3개를 골라 순서 나열)print(result)조합 라이브러리from itertools import combinationsdata = ['A', 'B', 'C']result = list(combinations(data, 2))print(result)중복 순열과 중복 조합product 라이브러리 - 중복 순열 구할 때combinations_with_replacement 라이브러리 - 중복 조합 구할 때from itertools from pro..
조건문파이썬에선 코드의 블록(Block)을 들여쓰기(Indent)로 지정한다.if ~ elif ~ else보통 else if를 쓰는데 파이썬은 줄여서 elif탭 vs 스페이스 여러번 사용? 두 진영이 나뉘어져 있음. 아직 활발히 논쟁 중.파이썬 스타일 가이드라인 : 4개의 공백 문자로 들여쓰기 하는 것을 권장.score = 85if score >= 70: print('성적이 70점 이상입니다.') if score >= 90: print('우수한 성적입니다.')else: print('성적이 70점 미만입니다.') print('조금 더 분발하세요.')print('프로그램을 종료합니다.') # 이건 무조건 실행됨.# 실행 ..
기본 입출력자주 사용되는 표준 입력 방법input() 함수 : 한 줄의 문자열을 입력 받는 함수map() 함수 : 리스트의 모든 원소에 각각 특정한 함수를 적용할 때 사용# 이렇게 써주면, 공백값 제거하면서 배열 만들어줌.# 입력값 : 50 40 78 100data = input().split()print(data)# 결과 : ['50', '40', '78', '100']# 근데 정수형으로 바꾸고 싶음 -> map() 함수 활용 후 list() 감싸주기data = list(map(int, input().split()))print(data)# 결과 : [50, 40, 78, 100]# 데이터를 딱 3개만 입력받고 싶다?a, b, c = map(int, input().split())print(a, b, c)..
정수형/실수형코테에서 이 정수형을 주로 다루게 됨.실수형 : 4바이트, 8바이트 등 고정된 크기의 메모리를 할당하므로 컴퓨터 시스템은 실수 정보를 표현하는 정확도에 한계를 가짐. (ex - 10진수에서 0.3+0.6=0.9 이지만, 2진수는 정확히 표현할 방법이 없음. 미세한 오차 발생)⇒ round() 함수를 이용하는 것이 권장됨. 주로 반올림해서 소수점 아래 몇째자리 까지의 정확성을 보장함.지수 표현 방식파이썬에선 e나 E를 이용해 지수 표현 방식을 사용할 수 있음.e나 E 다음에 오는 수는 10의 지수부를 의미함.1e9 ⇒ 10의 9제곱'최단 경로 알고리즘'에서는 도달할 수 없는 노드에 대하여 최단 거리를 무한(INF)로 설정하곤 함.⇒ 이때, 가능한 최댓값이 10억 미만이라면 무한(INF)의 값으..