在python脚本中使用argparse执行python脚本



我得到了两个不同的python脚本,第一个是使用argparse来获得一些额外的参数(我将称之为arg.py),第二个是我的主脚本(main.py)。
我想在main.py中调用arg.py,但我不知道怎么做。我看了一下命令execfile,但没能让它工作
我试着把
execfile('arg.py -h')
在main.py中,但python试图找到不存在的文件"arg.py-h"。有人知道怎么做吗?

提前感谢

您可以使用subprocess.callsubprocess.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

相关内容

  • 没有找到相关文章

最新更新