为了从外部传递参数给 Python 程序,并调用一个特定的函数,我们可以使用 Python 的内置库 argparse
。在这个例子中,我们将创建一个名为 example.py
的 Python 文件,该文件包含一个名为 print_args
的函数,该函数将接收并打印外部参数。
# example.py
import argparsedef print_args(arg1, arg2):print("Argument 1:", arg1)print("Argument 2:", arg2)def main():parser = argparse.ArgumentParser(description="Pass external arguments to a function.")parser.add_argument("arg1", help="First argument")parser.add_argument("arg2", help="Second argument")args = parser.parse_args()print_args(args.arg1, args.arg2)if __name__ == "__main__":main()
要从命令行运行此脚本并传递参数,可以使用以下命令:
python example.py <arg1> <arg2>
将 <arg1>
和 <arg2>
替换为您想要传递的实际参数。例如:
python example.py hello world
运行上述命令时,print_args
函数将接收并打印以下内容:
Argument 1: hello
Argument 2: world
请注意如果传递 参数 为 数字类型
比如 1 ,2,3
里面接受的也是str类型 所以需要转换一下
使用int() 转换
arg1 为参数名称不一定非要这么命名 也可以 改为 words,params1 等随便弄
当参数1 里面包含空格的时候如何处理
如果参数1包含空格,您可以在命令行中将该参数用双引号括起来。这将确保参数被作为一个完整的字符串传递,而不是被分割成多个部分。例如,如果您想将参数1设置为 "hello world",可以这样运行脚本:
python example.py "hello world" example_arg2
在这个例子中,print_args
函数将接收并打印以下内容:
Argument 1: hello world
Argument 2: example_arg2
请注意,如果您使用双引号括起来的参数本身包含双引号,需要用反斜杠 (\
) 对内部双引号进行转义,例如:
python example.py "hello \"world\"" example_arg2
运行上述命令时,print_args
函数将接收并打印以下内容:
Argument 1: hello "world"
Argument 2: example_arg2