【发布时间】:2012-08-23 02:24:50
【问题描述】:
我需要在另一个 python 脚本中使用不同的参数多次执行一个 python 脚本。 我知道这听起来很可怕,但这是有原因的。 然而问题是被调用者脚本不检查它是否被导入或执行(如果 __name__ == '__main__': ...)。
- 我知道我可以使用 subprocess.popen("python.exe callee.py -arg") 但这似乎比它应该的要慢得多,我猜那是因为 Python.exe 正在启动和终止多次.
- 我无法将脚本作为模块定期导入,因为它的设计如开头所述 - 导入时它将在没有 args 的情况下执行,因为它缺少 main() 方法。
- 我也无法更改被调用者脚本
- 据我了解,我也不能使用 execfile(),因为它不接受参数
【问题讨论】:
-
可以修改“callee-script”吗?
-
用适当的包装器替换脚本,它具有相同的功能,但从原始脚本调用方法或类。
标签: python import subprocess popen