直接将 Python 脚本传递给 python -m timeit
根据timeit的官方文档,我可以通过命令行来计时一些简单的Python代码,方法如下:
python3 -m timeit -n 5 "'-'.join(str(n) for n in range(100))"
我还可以通过运行下面的命令来执行一个名为script.py的Python3脚本:
python3 script.py
因此,我以为我可以这样做:
python3 -m timeit -n 5 script.py
但这并没有成功。
script.py 不是一个模块,所以一些类似的建议:
python3 -m timeit -n 5 -s 'import script(.py)'
也无法使用。
我有点想不出其他办法来实现我的目标,所以我想问:
有没有好的方法可以直接通过命令行使用python3 -m timeit
来测量一个Python脚本的运行时间?
另外,我不想做以下事情:
- 在Linux中使用time命令
- 在我的Python脚本中导入timeit模块
谢谢大家的建议。
2 个回答
0
试试这个
python3 -m timeit -r 1 -s "import subprocess" "subprocess.run(['python3', 'script_name.py'])"
0
我想到的最简单的方法就是用 os.system("python3 script.py"))
来执行 script.py 这个脚本。所以:
python3 -m timeit -n 5 -s "import os; os.system('python3 script.py')"