나는 보통 다음과 같이 jupyter 노트북에서 timeit을 사용합니다.
def some_function():
for x in range(1000):
return x
timeit(some_func())
다음과 같은 결과를 얻습니다.
6.3 ms ± 42.5 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
하지만 오늘 다음과 같은 오류가 발생했습니다.
TypeError Traceback (most recent call last)
<ipython-input-11-fef6a46355f1> in <module>
----> 1 timeit(some_func())
TypeError: 'module' object is not callable
어떻게 발생합니까?
잠시 검색하고 시도한 후를 사용하고 싶을 때 timeit(some_function())
필요하지 않지만 import timeit
다음과 같이 jupyter 노트북의 다른 입력에 작성해야한다는 것을 깨달았습니다.
IN [1] :
def some_function():
for x in range(1000):
return x
IN [2] :
timeit(some_func())
다음과 같은 출력을 얻을 수 있습니다.
280 ns ± 2.78 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
다음과 같이 하나의 입력에 쓸 때 :
IN [1] :
def some_function():
for x in range(1000):
return x
timeit(some_func())
timeit 정의되지 않은 오류가 발생하고 'timeit 가져 오기'시 질문에서 생성하는 것과 같은 또 다른 오류가 발생합니다 TypeError: 'module' object is not callable
.
import timeit
stmt 및 설정 (사용 가능한 경우)을 지정해야 할 때 예 :
import timeit
SETUP = """
import yourmodul_here
"""
TEST_CODE = """
def some_function():
for x in range(1000):
return x
"""
timeit.timeit(stmt=TEST_CODE, setup=SETUP, number=2000000)
그리고 우리는 다음과 같은 출력을 얻을 것입니다.
0.12415042300017376
TEST_CODE
실행 하기 전에로드해야하는 것입니다.그래서 우리가 timeit을 가져올 때 더 많이 써야 할 것 같습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다