공식 문서 링크 source code 링크 itertools.cycle itertools.cycle은 반복 가능한 객체(iterable)를 순서대로 무한히 반복하는 이터레이터를 생성하는 함수입니다. 예시 import itertools emp_pool = itertools.cycle(['kim', 'lee', 'park']) print(next(emp_pool)) # kim print(next(emp_pool)) # lee print(next(emp_pool)) # park print(next(emp_pool)) # kim 참고로 next()는 python 내장 함수로, 이터레이터의 다음 요소를 반환하는 함수입니다. itertools.accumulate itertools.accumulate는 반복 가능한 ..
공식 문서 링크 source code 링크 operator.itemgetter operator.itemgetter는 주로 sorted와 같은 함수의 key 매개변수에 적용하여 다양한 기준으로 정렬할 수 있도록 하는 모듈입니다. 예시 이름, 나이, 성적이 있는 학생 데이터를 기준에 맞게 정렬하는 프로그램입니다. tuple(나이 기준) from operator import itemgetter students = [ ("kim", 23, "A"), ("park", 12, "C"), ("lee", 19, "B"), ] result = sorted(students, key=itemgetter(1)) print(result) # [('park', 12, 'C'), ('lee', 19, 'B'), ('kim', 23..
공식 문서 source code 링크 statistics statistics는 평균값과 중앙값을 구할 때 사용하는 모듈입니다. 평균값은 statistics.mean() 함수를 사용하면 간단하게 구할 수 있습니다. import statistics mark = [79, 29, 40, 69, 90, 100, 74, 69] print(statistics.mean(mark)) # 68.75 중앙값은 statistics.median() 함수를 사용해 구하면 됩니다. print(statistics.median(mark)) # 71.5 http://www.yes24.com/Product/Goods/109209932 Do it! 점프 투 파이썬 라이브러리 예제 편 - YES24 『Do it! 점프 투 파이썬』의 후속 편..
공식 문서 source code 링크 random random은 난수를 생성할 때 사용하는 모듈입니다. 아래는 1 ~ 45 사이 숫자 중 임의의 숫자를 생성하는 예시 코드입니다. import random result = [] while len(result) < 6: num = random.randint(1, 45) # 1 ~ 45 사이의 정수 생성 if num not in result: # 중복 숫자 방지 result.append(num) print(result) # [7, 20, 21, 25, 45, 43] random.randint(a, b)는 a와 b사이의 무작위 정수를 생성하는 함수입니다. shuffle과 choice shuffle 리스트 요소를 무작위로 섞고 싶다면 random.shuffle()..
공식 문서 source code 링크 fractions fractions는 유리수를 계산할 때 사용하는 모듈입니다. result = 1/5 + 2/5 print(result) # 0.6000000000000001 위의 예시는 python에서 볼 수 있는 이상한 연산 결과의 예입니다. 원래 계산 결과는 0.6(3/5)이여야 하지만 이진수 기반의 python float 연산은 위처럼 미세한 오차가 발생할 수 있습니다. python에서 유리수 연산을 정확하게 하려면 fractions.Fraction을 사용해야 합니다. 유리수는 Fraction(분자, 분모) 형태 또는 Fraction('분자/분모') 형태로 만들 수 있습니다. from fractions import Fraction result_1 = Fract..
공식 문서 source code decimal decimal.Decimal decimal.Decimal은 숫자를 10진수로 처리해 정확한 소수점 자릿수를 표현할 때 사용하는 모듈입니다. print(0.1 * 3) # 0.30000000000000004 print(1.2 - 0.1)# 1.0999999999999999 print(0.1 * 0.1)# 0.010000000000000002 위의 예시는 python에서 볼 수 있는 이상한 연산 결과의 예입니다. 이진수 기반의 python float 연산은 위처럼 미세한 오차가 발생할 수 있습니다. print(0.1 * 3 == 0.3) # False import math print(math.isclose(0.1 * 3, 0.3)) # True 그래서 같은지를 ..