documentation가 기록됩니다itertools izip이 설명서의 동등한 기능보다 왜 더 빠릅니까?
def izip(*iterables):
# izip('ABCD', 'xy') --> Ax By
iterators = map(iter, iterables)
while iterators:
yield tuple(map(next, iterators))
하지만 itertools.izip으로 테스트를 실행할 때 빠른 작동, 그럼 난 내 모듈에서 izip 기능을 실행할 때. 왜 이런 일이 일어나는 걸까요? 모듈 기능을 빨리 실행할 수 있습니까?
Thx.
편집 :
타이머 테스트 : 내 CPython의에서
>>> t = Timer("dict(izip_2(keys,values))", "from __main__ import keys, values, izip_2")
>>> t2 = Timer("dict(itertools.izip(keys,values))", "from __main__ import keys, values")
>>>
>>> print min(t.repeat(5, 10000))
31.6810410023
>>> print min(t2.repeat(5, 10000))
2.50448894501
어느 쪽이 빠름을 어떻게 결정 했습니까? – thefourtheye
타이머 포함 >>> t = 타이머 ("dict (izip_2 (keys, values))", "__main__ 수입 키, 값, izip_2") >>> t2 = Timer ("dict (itertools.izip (keys (5, 10000)) 31.6810410023 >>> print min (t2.repeat (5, 10000)) >>> print min (t, 10000)) 2.50448894501 –
질문을 편집하고 이러한 세부 정보도 함께 적어주십시오. – thefourtheye