一、前言
保定ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!在近半年的 Python 命令行旅程中,我们依次学习了 argparse 、 docopt 、 click 和 fire 库的特点和用法,逐步了解到 Python 命令行库的设计哲学与演变。本文作为本次旅程的终点,希望从一个更高的视角对这些库进行横向对比,总结它们的异同点和使用场景,以期在应对不同场景时能够分析利弊,选择合适的库为己所用。
本系列文章默认使用 Python 3 作为解释器进行讲解。若你仍在使用 Python 2,请注意两者之间语法和库的使用差异哦~
二、设计理念
在讨论各个库的设计理念之前,我们先设计一个 计算器程序 ,其实这个例子在 argparse 库的第一篇讲解中出现过,也就是:
希望从各个库实现该例子的代码中能进一步体会它们的设计理念。
2.1、argparse
argparse 的设计理念就是提供给你最细粒度的控制,你需要详细地告诉它参数是选项参数还是位置参数、参数值的类型是什么、该参数的处理动作是怎样的。总之,它就像是一个没有智能分析能力的初代机器人,你需要告诉它明确的信息,它才会根据给定的信息去帮助你做事情。
以下示例为 argparse 实现的 计算器程序 :
import argparse # 1. 设置解析器 parser = argparse.ArgumentParser(description='Calculator Program.') # 2. 定义参数 # 添加位置参数 nums,在帮助信息中显示为 num # 其类型为 int,且支持输入多个,且至少需要提供一个 parser.add_argument('nums', metavar='num', type=int, nargs='+', help='a num for the accumulator') # 添加选项参数 --sum,该参数被 parser 解析后所对应的属性名为 accumulate # 若不提供 --sum,默认值为 max 函数,否则为 sum 函数 parser.add_argument('--sum', dest='accumulate', action='store_const', const=sum, default=max, help='sum the nums (default: find the max)') # 3. 解析参数 args = parser.parse_args(['--sum', '1', '2', '3']) print(args) # 结果:Namespace(accumulate=<built-in function sum>, nums=[1, 2, 3]) # 4. 业务逻辑 result = args.accumulate(args.nums) print(result) # 基于上文的 ['--sum', '1', '2', '3'] 参数,accumulate 为 sum 函数,其结果为 6
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章题目:用什么库写Python命令行程序(示例代码详解)-创新互联
分享地址:https://www.cdcxhl.com/article32/ddoepc.html
成都网站建设公司_创新互联,为您提供微信公众号、ChatGPT、软件开发、网站排名、网站内链、虚拟主机
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联