Getting "TypeError: 'module' is not callable" when calculating execution time with timeit
Getting "TypeError: 'module' is not callable" when calculating execution time with timeit
我正在尝试计算我的 python 代码的时间,但我不断收到:
TypeError - 'module' is not callable
import timeit
timeit.timeit('"-".join(str(n) for n in range(100))', number=10000)
我正在检查的 link 是这个 - https://docs.python.org/2/library/timeit.html
我希望看到将代码带到 运行 的时间。
我们走吧!
import time
origin_time = time.time()
这样你就可以从纪元
中获得以秒为单位的当前时间
并且每当您想知道花费的时间时,只需写下:
current_spent_time = time.time() - origin_time
这将再次获取当前时间(以秒为单位)并减去之前的 origin_time,这是您的代码开始的时间 运行。
希望对您有所帮助!!
您是否将文件命名为 timeit.py?
$ cat timeit.py
import timeit
timeit.timeit('"-".join(str(n) for n in range(100))', number=10000)
$ python3 timeit.py
Traceback (most recent call last):
File "timeit.py", line 1, in <module>
import timeit
File "/path/to/timeit.py", line 2, in <module>
timeit.timeit('"-".join(str(n) for n in range(100))', number=10000)
TypeError: 'module' object is not callable
您必须将文件重命名为其他名称(例如 mytimeit.py)。
否则 import
将导入 your timeit
而不是 real timeit
模块。
您可以使用 print(timeit.__file__)
检查 import
-ed 模块。
另外,如果你想看到“代码到运行的时间”,你必须打印它。
$ mv timeit.py mytimeit.py
$ cat mytimeit.py
import timeit
print(timeit.__file__)
print(timeit.timeit('"-".join(str(n) for n in range(100))', number=10000))
$ python3 mytimeit.py
/usr/lib/python3.6/timeit.py
0.1469665479962714
我正在尝试计算我的 python 代码的时间,但我不断收到:
TypeError - 'module' is not callable
import timeit
timeit.timeit('"-".join(str(n) for n in range(100))', number=10000)
我正在检查的 link 是这个 - https://docs.python.org/2/library/timeit.html
我希望看到将代码带到 运行 的时间。
我们走吧!
import time
origin_time = time.time()
这样你就可以从纪元
并且每当您想知道花费的时间时,只需写下:
current_spent_time = time.time() - origin_time
这将再次获取当前时间(以秒为单位)并减去之前的 origin_time,这是您的代码开始的时间 运行。
希望对您有所帮助!!
您是否将文件命名为 timeit.py?
$ cat timeit.py
import timeit
timeit.timeit('"-".join(str(n) for n in range(100))', number=10000)
$ python3 timeit.py
Traceback (most recent call last):
File "timeit.py", line 1, in <module>
import timeit
File "/path/to/timeit.py", line 2, in <module>
timeit.timeit('"-".join(str(n) for n in range(100))', number=10000)
TypeError: 'module' object is not callable
您必须将文件重命名为其他名称(例如 mytimeit.py)。
否则 import
将导入 your timeit
而不是 real timeit
模块。
您可以使用 print(timeit.__file__)
检查 import
-ed 模块。
另外,如果你想看到“代码到运行的时间”,你必须打印它。
$ mv timeit.py mytimeit.py
$ cat mytimeit.py
import timeit
print(timeit.__file__)
print(timeit.timeit('"-".join(str(n) for n in range(100))', number=10000))
$ python3 mytimeit.py
/usr/lib/python3.6/timeit.py
0.1469665479962714