더북(TheBook)

일단 이렇게 기준(13밀리초)을 정하고, 이를 바탕으로 같은 동작을 다른 접근법으로 수행하면서 마이크로벤치마크에 미치는 영향을 비교할 수 있다. 예를 들어 리스트 대신 집합 데이터 구조를 setup 코드에서 만들게 바꿔보자.

delay = timeit.timeit(
    setup="""
numbers = set(range(10_000))
probe = 7_777
""",
    stmt="""
probe in numbers
""",
    globals=globals(),
    number=count,
)

print(f"{delay/count*1e9:.2f} 나노초")

 

>>>
14.87 나노초