从另一个Python脚本运行一个Python脚本,并传入参数
我想从另一个Python脚本运行一个Python脚本。我想像使用命令行一样传递变量。
例如,我会跑我的,将通过值(0,1,2,3)的列表迭代第一个脚本,并通过那些到第二脚本script2.py 0
,然后script2.py 1
,等
我发现了Stack Overflow问题1186789,这是一个类似的问题,但是ars的答案调用了一个函数,在这里我想运行整个脚本,而不仅仅是函数,而balpha的答案则调用了脚本,但没有参数。我将其更改为如下所示的测试:
execfile("script2.py 1")
但是它没有正确接受变量。当我打印出sys.argvscript2.py
中的in时,它是对第一个脚本“ ['C:\ script1.py']
的原始命令调用。
我真的不想更改原始脚本(例如,在我的示例中为script2.py
),因为我不拥有它。
我认为一定有办法做到这一点。我只是很困惑你怎么做。
回答:
尝试使用os.system
:
os.system("script2.py 1")
execfile
有所不同,因为它旨在在当前执行上下文中运行一系列Python语句。这就是为什么sys.argv
没有为你改变。
以上是 从另一个Python脚本运行一个Python脚本,并传入参数 的全部内容, 来源链接: utcz.com/qa/434041.html