我有两个不同的 python 脚本,第一个是使用 argparse 来获取一些额外的参数(我称之为 arg.py),第二个是我的主脚本(main.py)。
我想在 main.py 中调用 arg.py 但我不知道该怎么做。我看了一下命令 execfile 但我没有设法让它工作。
我尝试放入
execfile('arg.py -h')
main.py 但 python 尝试查找不存在的文件 'arg.py -h'。有谁知道这是怎么做到的吗 ?
提前致谢
subprocess.call
您可以使用或将其作为单独的进程运行subprocess.Popen
。如果您不想将其作为子进程运行,那么它开始变得更加复杂(取决于您的arg.py
脚本的结构。
execfile
获取您传递给它的文件并将其包含在当前脚本中——很像#include
c/c++ 中的预处理器指令(尽管这是动态完成的)。一个非常丑陋的选择execfile
是:
#completely untested.
import sys
def run_script(script_name,*args):
_argv = sys.argv[:]
sys.argv = list(args)
execfile(script_name)
sys.argv = _argv