我得到了两个不同的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
获取您传递给它的文件,并将其包含在当前脚本中——很像c/c++中的#include
预处理器指令(尽管这是动态完成的)。使用execfile
的一个非常丑陋的选项是:
#completely untested.
import sys
def run_script(script_name,*args):
_argv = sys.argv[:]
sys.argv = list(args)
execfile(script_name)
sys.argv = _argv