Python中怎么处理命令行参数
发表于:2025-02-13 作者:千家信息网编辑
千家信息网最后更新 2025年02月13日,这期内容当中小编将会给大家带来有关Python中怎么处理命令行参数,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.sys模块Python中的sys模块具有argv
千家信息网最后更新 2025年02月13日Python中怎么处理命令行参数
这期内容当中小编将会给大家带来有关Python中怎么处理命令行参数,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
1.sys模块
Python中的sys模块具有argv功能。当通过终端触发main.py的执行时,此功能返回所有命令行参数的列表。返回列表中的第一个元素是main.py.
考虑下面的main.py示例
import syslist_of_arguments = sys.argvprint(list_of_args[0]) print(list_of_args[1]) print(list_of_args[2]) print(list_of_args[3])
触发main.py:
python main.py first_arg "[second_arg]" "{\"arg\": 3}"
返回:
test.pyfirst_arg[second_arg]{"arg": 3}
2.带有大参数的sys模块
这是一种为Python代码提供参数的简单又强大的方法。它不是提供提供多个参数,而是提供单个"大"参数。这一个大参数是一个字典,键表示参数名,值表示它们的对应值。
由于在Python中读取时,dictionary参数被表示为字符串,因此应该将其转换为字典。这可以通过使用ast.literal_eval或者json.loads函数做到。ast或json模块需要相应地导入。
考虑下面的main.py示例:
import sysimport astraw_arguments = sys.argv[1]print(raw_arguments)arguments = ast.literal_eval(raw_arguments)print(arguments['name']) # Johnprint(arguments['surname']) # Doeprint(arguments['age']) # 22
触发mian.py:
python main.py "{\"name\": \"John\", \"surname\": \"Doe\", \"age\": 22}"
返回:
{"name": "John", "surname": "Doe", "age": 22}JohnDoe22
3.argparse模块
如果你想为应用程序提供适当的命令行界面,那么argparse就是要使用的模块。这是一个成熟的模块,提供开箱即用的参数解析、帮助消息以及参数被误用时会自动抛出错误。Python默认安装此模块。
要充分利用argparse提供的功能,需要一些时间来掌握。作为一个示例,考虑以下示例main.py:
import argparseparser = argparse.ArgumentParser(description='Personal information')parser.add_argument('--name', dest='name', type=str, help='Name of the candidate')parser.add_argument('--surname', dest='surname', type=str, help='Surname of the candidate')parser.add_argument('--age', dest='age', type=int, help='Age of the candidate')args = parser.parse_args()print(args.name)print(args.surname)print(args.age)
初始化ArgumentParses的对象后,我们使用add_argument
函数添加所有参数。此函数接收许多参数,其中包括参数名称(例如--name
)、目标变量、预期数据类型、要显示的帮助消息等。
触发main.py:
python main.py --name John --surname Doe --age 22
返回
JohnDoe22
上述就是小编为大家分享的Python中怎么处理命令行参数了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。
参数
模块
命令
示例
函数
功能
处理
内容
字典
就是
消息
这是
面的
分析
帮助
强大
适当
成熟
中小
代码
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库工程师软考通过率
现阶段网络安全的重要性
hdr网络安全
学软件开发必须要学英语吗
在数据库的基本操作中
为什么这段时间斗鱼的服务器连不上
服务器与交换机距离
铁可以在水银中我服务器的
莆田市圣帆网络技术有限公司
微耕access数据库密码
力控常用的数据库
c连数据库
地表最强互联网科技有限公司
无法连接到收信服务器
网络技术经理干什么的
官庄乡软件开发培训报价
用友u8获取数据库出错一个是真
网络安全六有教育
米花同城6.6.20数据库
网络安全的几大方法
叮咚买菜软件开发帖子
我的世界超良心的服务器
关于生物学的数据库
专利数据库价值
魔兽rpg服务器是什么意思
网络安全进校园主题
美术大观 期刊精品数据库
菲菲网络技术
windows服务器
服务器蓝灯长亮