argparse是Python命令行脚本开发的推荐标准方案,sys.argv适合简单场景;前者支持自动帮助、类型转换、校验等,后者仅返回原始参数列表,需手动处理。
Python命令行脚本开发中,argparse是推荐的标准方案,sys.argv适合简单场景。两者不
是互斥关系,而是按需选择:小工具用sys够快,正式脚本用argparse更健壮、可维护。
sys.argv是最底层的方式,返回命令行输入的字符串列表,sys.argv[0]是脚本名,后续元素是传入的参数。适合单参数、无选项、调试用的小脚本。
filename = sys.argv[1](注意加try/except防报错)len(sys.argv)判断参数个数是否符合预期argparse是Python标准库中专为命令行解析设计的模块,能自动生成帮助文档、处理短/长选项、类型转换、默认值、互斥组等。
ArgumentParser对象,调用add_argument()定义参数,如parser.add_argument("-f", "--file", help="输入文件路径")
parser.parse_args()后得到命名空间对象,属性名即参数名(如args.file)type=int、default="xxx"、required=True、nargs="+"(接收多个值)等实用参数-h或--help自动输出格式化帮助页实际开发中常混合使用两种方式,或在argparse基础上做增强。
argparse.ArgumentParser(prog="mytool")自定义程序名,避免显示完整路径const + nargs="?"实现“开关式”参数sys.argv再传给argparse;如需预处理,应先提取、再构造新参数列表add_subparsers(),适合git commit、git push这类多动作工具以下是一个带文件输入、是否静默模式、输出行数的脚本骨架:
import argparsedef main(): parser = argparse.ArgumentParser(description="统计文本行数") parser.add_argument("file", help="要读取的文件路径") parser.add_argument("-s", "--silent", action="store_true", help="不打印内容,只输出行数") args = parser.parse_args()
with open(args.file) as f: lines = f.readlines() print(len(lines)) if not args.silent: print("".join(lines[:3])) # 打印前3行示意if name == "main": main()
保存为count.py后,可运行python count.py data.txt -s或python count.py data.txt --help验证效果。
# python
# git
# 工具
# ai
# 配置文件
# 标准库
# red
相关文章:
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
建站之星在线客服如何快速接入解答?
网站制作费用多少钱,一个网站的运营,需要哪些费用?
网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在阿里云高效完成企业建站全流程?
c++怎么用jemalloc c++替换默认内存分配器【性能】
中山网站推广排名,中山信息港登录入口?
建站之星如何实现五合一智能建站与营销推广?
单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?
如何通过山东自助建站平台快速注册域名?
如何通过商城自助建站源码实现零基础高效建站?
如何选择靠谱的建站公司加盟品牌?
桂林网站制作公司有哪些,桂林马拉松怎么报名?
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
临沂网站制作公司有哪些,临沂第四中学官网?
如何在云指建站中生成FTP站点?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
如何用腾讯建站主机快速创建免费网站?
如何通过NAT技术实现内网高效建站?
北京营销型网站制作公司,可以用python做一个营销推广网站吗?
武清网站制作公司,天津武清个人营业执照注销查询系统网站?
如何正确选择百度移动适配建站域名?
如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本
建站之星上传入口如何快速找到?
如何通过VPS搭建网站快速盈利?
建站之星官网登录失败?如何快速解决?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
北京建设网站制作公司,北京古代建筑博物馆预约官网?
如何通过西部数码建站助手快速创建专业网站?
python的本地网站制作,如何创建本地站点?
如何在建站之星绑定自定义域名?
如何有效防御Web建站篡改攻击?
如何基于云服务器快速搭建网站及云盘系统?
如何获取PHP WAP自助建站系统源码?
建站主机选虚拟主机还是云服务器更好?
如何快速搭建响应式可视化网站?
如何快速搭建二级域名独立网站?
完全自定义免费建站平台:主题模板在线生成一站式服务
微信小程序制作网站有哪些,微信小程序需要做网站吗?
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
如何在Ubuntu系统下快速搭建WordPress个人网站?
C++中引用和指针有什么区别?(代码说明)
C#怎么使用委托和事件 C# delegate与event编程方法
如何在宝塔面板创建新站点?
如何选择高性价比服务器搭建个人网站?
如何在万网开始建站?分步指南解析
建站之星备案流程有哪些注意事项?
如何在Golang中使用encoding/gob序列化对象_存储和传输数据
*请认真填写需求信息,我们会在24小时内与您取得联系。