python脚本怎么传参数

python脚本怎么传参数

作者:Rhett Bai发布时间:2026-03-25阅读时长:0 分钟阅读次数:4

用户关注问题

Q
如何在运行Python脚本时传递命令行参数?

我想在执行Python脚本时传入一些参数,该怎么操作?

A

使用sys模块读取命令行参数

Python脚本可以通过sys模块的argv列表获取命令行参数。argv[0]是脚本名,从argv[1]开始依次是传递的参数。可以在脚本中导入sys模块,然后使用sys.argv访问这些参数。例如:

import sys
print(sys.argv)

Q
怎样使用argparse模块更好地传递和解析Python脚本参数?

希望脚本参数能够更加清晰和便于维护,有没有推荐的方法?

A

利用argparse模块定义和解析参数

argparse是Python标准库中专门用于命令行参数解析的模块。它支持参数类型自定义、帮助信息生成以及参数默认值。使用时先创建ArgumentParser对象,添加参数定义,然后调用parse_args方法获取参数值。示例代码:

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--num', type=int, help='数字参数')
args = parser.parse_args()
print(args.num)

Q
Python脚本传入参数时如何传递多个参数或者带空格的字符串?

如果参数中包含空格或者想传递多个参数,有什么注意点吗?

A

正确引用参数并使用列表传递多个参数

在命令行中传入带空格的参数时,需要用引号将参数括起来,比如"hello world"。这样Python脚本中的sys.argv会把它当作单个参数处理。多个参数之间用空格分隔即可,例如:python script.py arg1 "multi word arg" arg3