Python 包装脚本来测量另一个 python 文件的执行时间
Python wrapper script to measure execution time of another python file
如何制作一个 python 包装脚本来测量另一个脚本或另一个 .py 文件的执行时间?
可以使用定时器模块
from timeit import default_timer as timer
start = timer()
function_you_want_to_time()
# or import your script here
# import script_to_time
end = timer()
elapsed = str(end - start)
print(f'Run time in seconds: {elapsed}')
我最近有一个类似的问题要解决,我的解决方案是编写一个可导入的模块,我可以通过 import MyModule
调用它,它会捕获脚本执行时间以及任何运行时异常,然后将结果推送到数据仓库。
我的解决方案是这样的
import MyModule
def main():
print("do work")
if __main__ == '__main__':
try:
main()
except Exception as e:
MyModule.script.script_execution(e)
else:
MyModule.script.script_execution()
MyModule 会喜欢这样的东西
MyModule.__init__.py
from datetime import datetime
class ScriptExeuction:
def __init__(self):
self.start_time = datetime.now()
def script_execution(self, exception=None):
self.end_time = datetime.now()
print(f"Execution took {self.end_time - self.start_time}")
if __name__ == '__main__':
pass
else:
script = ScriptExeuction()
当然,您需要扩展它以将数据放在您想要的位置,但您可以轻松地扩展 ScriptExecution class 来处理将数据推送到某处的逻辑,并且您可以捕获发生的异常在脚本中。
如何制作一个 python 包装脚本来测量另一个脚本或另一个 .py 文件的执行时间?
可以使用定时器模块
from timeit import default_timer as timer
start = timer()
function_you_want_to_time()
# or import your script here
# import script_to_time
end = timer()
elapsed = str(end - start)
print(f'Run time in seconds: {elapsed}')
我最近有一个类似的问题要解决,我的解决方案是编写一个可导入的模块,我可以通过 import MyModule
调用它,它会捕获脚本执行时间以及任何运行时异常,然后将结果推送到数据仓库。
我的解决方案是这样的
import MyModule
def main():
print("do work")
if __main__ == '__main__':
try:
main()
except Exception as e:
MyModule.script.script_execution(e)
else:
MyModule.script.script_execution()
MyModule 会喜欢这样的东西
MyModule.__init__.py
from datetime import datetime
class ScriptExeuction:
def __init__(self):
self.start_time = datetime.now()
def script_execution(self, exception=None):
self.end_time = datetime.now()
print(f"Execution took {self.end_time - self.start_time}")
if __name__ == '__main__':
pass
else:
script = ScriptExeuction()
当然,您需要扩展它以将数据放在您想要的位置,但您可以轻松地扩展 ScriptExecution class 来处理将数据推送到某处的逻辑,并且您可以捕获发生的异常在脚本中。