我正在寻找最有效/最简单的方法来运行带有以下参数的脚本(我们将其称为 script1):
- 调用其他几个脚本中的一个(仅一个)(作为 script1 的参数),从而:
- 其中包含在运行 script1 时给出的参数,并根据 script1 上的参数传递给正在运行的任何脚本...
例如,我想运行带有参数的 script1 来调用带有参数 a 和 b 的 script2:
script1.py ( script2 a b )
我研究过函数并读过一些人建议使用 lambda,但我相当新手,想要学习和理解,而不仅仅是提供我不理解的答案......
只是想知道一些方法是什么,并且正在寻找如何实现我想要的东西的通用示例,以便我可以对其进行编程并理解它......
提前致谢!!
最佳答案
如果您希望您的脚本(一个 Python 程序,我们称之为 script1.py
)使用给定的参数调用另一个脚本(另一个 Python 程序),您可以将 script1.py
编写为:
import subprocess, sys
subprocess.call(sys.argv[1:])
sys.argv
是一个包含程序名称的列表(使用 print sys.argv[0]
并自行查看),之后是所有传递给您的程序的参数。
sys.argv[1:]
表示:sys.argv
列表的内容,从第二个元素(索引为 1)开始到末尾列表。
subprocess.call
调用另一个程序,它接受一个包含要执行的程序及其所有参数的列表。
关于python - 运行一个脚本,该脚本调用另一个脚本作为参数,而该脚本又具有参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6848240/