是否可以将参数传递到 Python 脚本中?

是否可以将参数传递到 Python 脚本中?

我知道如何将参数传递到 shell 脚本中。这些参数在 AWS datapipeline 中声明并传递。 shell 脚本如下所示:

firstarg=$1
secondarg=$2

我如何在 Python 中做到这一点?是完全相同的吗?

答案1

这对我有用:

import sys
firstarg=sys.argv[1]
secondarg=sys.argv[2]
thirdarg=sys.argv[3]

答案2

您可以使用 sys 中的 argv

from sys import argv
arg1, arg2, arg3, ... = argv

实际上,您可以在命令行中放置任意数量的参数。 argv 将是一个包含参数的列表。因此它也可以被称为 arg1 = sys.argv[0] arg2 = sys.argv[1] 。 。 。

还要记住 sys.argv[0] 只是你的 python 程序的名称。此外,当您使用命令行输入时,“eval”和“exec”函数非常有用。通常,命令行中的所有内容都被解释为字符串。因此,如果您想在命令行中给出公式,请使用 eval()。

>>> x = 1
>>> print eval('x+1')
2

答案3

import sys
# Display File name 
print("Script name ", sys.argv[0])
# Display the first argument
print(f"first arg {sys.argv[1]}")

相关内容