如何在从终端执行 python 脚本时将参数传递给函数?

如何在从终端执行 python 脚本时将参数传递给函数?

我有一个名为的python文件solution.py,我可以使用以下命令通过终端成功执行它:

chmod +x solution.py
python3 solution.py

如果我有简单的印刷短语等等,这就很好了。

solution.py如果我已经定义了一个函数,并且想直接从终端使用我想要的参数调用它,我该怎么办?如何将参数传递给函数调用?

答案1

您还可以使用sys模块。下面是一个例子:

import sys

first_arg = sys.argv[1]
second_arg = sys.argv[2]

def greetings(word1=first_arg, word2=second_arg):
    print("{} {}".format(word1, word2))

if __name__ == "__main__":
    greetings()
    greetings("Bonjour", "monde")

它具有您正在寻找的行为:

$ python parse_args.py Hello world
Hello world
Bonjour monde

答案2

Python 提供了多种解析参数的方法。最好的选择是使用argparse模块,它具有许多您可以使用的功能。

因此,您必须解析代码中的参数,并尝试捕获和获取代码中的参数。

您不能仅仅通过终端传递参数而不从代码中解析它们。

相关内容