簡體   English   中英

Timeit計時Python函數

[英]Timeit timing a python function

我正在嘗試計時以下函數,但是它向我顯示錯誤,無法導入名稱val_in_range,這是什么錯誤,還有其他方法可以更好地做到這一點嗎?

import timeit

x = 10000000

def val_in_range(x, val):
    return val in range(x)

print (val_in_range(x,x/2))

timeit.timeit( 'val_in_range(x,x/2)', 'from __main__ import val_in_range, x',  number=10)

輸出:

True
Traceback (most recent call last):
  File "python", line 11, in <module>
  File "<timeit-src>", line 3, in inner
ImportError: cannot import name 'val_in_range'

替換timeit.timeit( 'val_in_range(x,x/2)', 'from __main__ import val_in_range, x', number=10)

timeit.timeit(lambda:val_in_range(x,x/2), number=10)

您可以使用print語句直接打印值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM