【发布时间】:2021-04-01 12:52:56
【问题描述】:
我有一个 python 脚本,一次只用于一个输入。我有一个输入列表,我希望这个 python 脚本在 Linux 中独立运行不同的输入。
假设这是我的脚本:
script.py with input "name1",
list of inputs = ["name1", "name2"]
在脚本中使用 for 循环不能满足我的要求。 这可以使用子流程吗?还是另一个python文件中的for循环?如果是,那么如何? 我尝试使用另一个带有代码的 python 文件运行这个 script.py:
from subprocess import call
for i in range(len(list_inputs)): ???
call(["python", "script.py"])
但是我如何给我的 script.py 提供输入,我也不想通过在终端上输入来提供输入
请建议我该怎么做?
【问题讨论】:
-
恕我直言,最简单的方法是将参数传递给脚本:
for param in list_inputs: subprocess.run(['/path/to/python', '/path/to/script.py', param])。然后在script.py中使用sys.argv获取参数。 -
非常感谢...帮助很大。这正是我想要的!
标签: python linux subprocess