python iterator 관련itertools 패키지 및 메소드 정리
python iterator 관련 tiertools 패키지 및 메소드 정리
http://docs.python.org/2/library/itertools.html
from itertools import *
count(n) : n 부터 시작하는 정수,증가하는 이터레이터
cycle(list) : list반복하는 it
repeat(elem, n) : elem을 n번 반복하는 이터레이터
chain(p,q) : p에 q를 붙인 it
compress(data, selector) : data에서 selector에 충족하는것만
dropwhile(pred,seq) : pred에 seq를 대입해서 참일때까지 떨구고, 나머지부터 iter
takewhile() : 조건이 참일때까지 iterate.
ifilter(pred,seq) : 이터레이터 필터, seq중에 조건에 참인걸 나타냄
ifilerfalse(pres, seq) : 거짓인걸 나타냄
imap(func, p, q) iterator map ex imap(pow,(2,3,10), (5,2,3))
strmap(func, seq) : ex strmap(pow, [(2,5),(3,2),(10,3)])
tee(it, n) : 한 이터레이터를 n개로 나눈다. 라고 써있는것같은데.. 복사인듯, n개의 it가 각각 같은 반복을 함..
이건 수학시간때 배웠을법한.. 경우의수인가..
product('ABCD', repeat=2)
AA AB AC AD
BA BB BC BD
CA CB CC CD
DA DB DC DD
permutations('ABCD', 2)
AB AC AD BA
BC BD CA CB
CD DA DB DC
combinations('ABCD', 2)
AB AC AD BC BD CD
combinations_with_replacement('ABCD', 2)
AA AB AC AD
BB BC BD
CC CD
DD