簡體   English   中英

ImportError:無法導入名稱錯誤

[英]ImportError: cannot import name Error

我有一個非常簡單的測試函數,我需要使用“ timeit”模塊捕獲其執行時間,但出現錯誤

功能:

import timeit
def test1():                            
    l = []
    for i in range(1000):
        l = l + [i]

t1 = timeit.Timer("test1()", "from __main__ import test1")
print(t1.timeit(number=1000))

錯誤:C:\\ Python34 \\ lib \\ timeit.py:186:在timetime計時= self.inner(it,self.timer):3:在內部??? Ë
ImportError:無法導入名稱'test1'============ 1個錯誤在0.03秒內==============

你們可以幫我解決問題嗎?

我認為您的代碼有幾個問題。 首先請確保您可以導入timeit。 並且您將其作為模塊。 為此,您可以運行:

 python -m timeit '"-".join(str(n) for n in range(100))'

如果執行正常,那么您肯定具有timeit模塊。

現在關於您的問題。 我自由地以一種更干凈的方式重寫了它。

import timeit    

def append_list():
 num_list = []
 for i in range(1000):
         num_list.append(i)

print(timeit.timeit(stmt=append_list, number=1000)) #number is the number of repetion of the operation, in this case, 1000
# you can also run
print(timeit.timeit(stmt=append_list, number=1))   

現在,上面的代碼可以完成您想做的事情,即計算將1到1000的數字附加到列表所需的時間。

暫無
暫無

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

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