1. argparse介绍

argparse是Python标准库中用于解析命令行参数的模块。它提供了一种简洁而灵活的方式来处理命令行参数,包括选项(可选参数)和位置参数(必需参数)

2. argparse基本使用

点击查看代码
import argparse

# 1. 创建ArgumentParser对象,在创建ArgumentParser对象时,可以传入一个可选的description参数,用于描述你的程序的功能和用法。
parser = argparse.ArgumentParser(description='Description of your program') # 2. 添加命令行参数
# 2.1 添加位置参数
# 位置参数指的是位置参数是指在命令行中没有使用选项标志(如-或--)的参数,它们根据在解析器中定义的顺序进行解析。所以位置参数在传入时要根据定义顺序传入
parser.add_argument('name', help="Name of the person")
# 2.2 添加可选参数
# 以下-g和--greeting的关系:
# -g: 短选项。使用方式示例:-g "Hello" 或 -gHello
# -greeting: 长选项。似乎用方式示例:--greeting "Hello" 或 --greeting=Hello # -g和--greeting两种方式可以同时存在,也可以只选其一。
parser.add_argument('-g', '--greeting', help='Greeting message') # 3. 解析命令行参数
args = parser.parse_args() # parse_args()方法会解析命令行参数,并返回一个包含解析结果的命名空间对象 # 4. 使用解析结果
# 可以通过访问命名空间对象的属性来获取解析后的参数值。
print(args.name)
print(args.greeting)
print(args.g)

3. 子命令解析器

点击查看代码示例
import argparse

# 创建解析器对象
parser = argparse.ArgumentParser() # 创建子命令解析器对象
subparsers = parser.add_subparsers(dest='command') # 创建子命令 'add' 的解析器
add_parser = subparsers.add_parser('add')
add_parser.add_argument('numbers', type=int, nargs='+', help='numbers to add') # 创建子命令 'multiply' 的解析器
multiply_parser = subparsers.add_parser('multiply')
multiply_parser.add_argument('numbers', type=int, nargs='+', help='numbers to multiply') # 解析命令行参数
args = parser.parse_args() # 根据命令调用相应的处理函数
if args.command == 'add':
result = sum(args.numbers)
print(f'Sum: {result}')
elif args.command == 'multiply':
result = 1
for num in args.numbers:
result *= num
print(f'Product: {result}')
点击查看示例运行结果
$ python argparse_for_subparser.py  add 2 3 4
Sum: 9 $ python argparse_for_subparser.py multiply 2 3 4
Product: 24

python-argparse用法简介的更多相关文章

  1. python argparse用法总结

    转:python argparse用法总结 1. argparse介绍 argparse是python的一个命令行解析包,非常适合用来编写可读性非常好的程序. 2. 基本用法 prog.py是我在li ...

  2. 【转】python argparse用法总结

    转自:https://www.jianshu.com/p/fef2d215b91d 1. argparse介绍 是python的一个命令行解析包,非常编写可读性非常好的程序 2. 基本用法 prog. ...

  3. 转载:python argparse用法总结

    https://www.jianshu.com/p/fef2d215b91d 1. argparse介绍 是python的一个命令行解析包,非常编写可读性非常好的程序 2. 基本用法 prog.py是 ...

  4. Python argparse用法

    import argparse import sys parser = argparse.ArgumentParser(description='this is for test.') parser. ...

  5. Python argparse 用法总结

    使用argparse的四个基本步骤 创建 ArgumentParser() 对象 调用 add_argument() 方法添加参数 使用 parse_args() 解析添加的参数 # example ...

  6. Python生态环境简介[转]

    Python生态环境简介 作者: Mir Nazim 原文: Python Ecosystem - An Introduction 译者: dccrazyboy  原译: Python生态环境简介 当 ...

  7. (转)python生态环境简介

    Python生态环境简介 作者: Mir Nazim 原文: Python Ecosystem - An Introduction 译者: dccrazyboy  原译: Python生态环境简介 当 ...

  8. Python argparse 处理命令行小结

    Python argparse 处理命令行小结 1. 关于argparse是python的一个命令行解析包,主要用于处理命令行参数 2. 基本用法test.py是测试文件,其内容如下: import ...

  9. python argparse库

    argparse用法总结 https://blog.csdn.net/qq_24551305/article/details/90155858 args = parse.parse_args()par ...

  10. IOS NSInvocation用法简介

    IOS NSInvocation用法简介 2012-10-25 19:59 来源:博客园 作者:csj007523 字号:T|T [摘要]在 iOS中可以直接调用某个对象的消息方式有两种,其中一种就是 ...

随机推荐

  1. jwt-shiro-springsecurity-oauth2对比

    1 实现token的方式概述 在cookie\session\token辨析一文已经知道了token这个概念,里面简单说明了token的组成就是数据+签名,给出了token实现身份验证的流程,并且详细 ...

  2. runoob-android

    https://www.runoob.com/android/android-tutorial.html https://www.runoob.com/w3cnote/android-tutorial ...

  3. 揭秘10种主流PLC在ModbusTCP通信中的速度表现!

    大家好!我是付工. 通透!终于把ModbusRTU弄明白了 这样看来,ModbusTCP协议太简单了 太简单了!C#轻松实现Modbus通信 前面给大家介绍了一系列关于Modbus和ModbusTCP ...

  4. wget命令简单使用

    wget是Linux下一个文件下载工具.wget支持HTTP.HTTPS.FTP协议,可使用HTTP代理. 所谓自动下载,是指 wget 可以在用户退出系统的之后在继续后台执行,直到下载任务完成. w ...

  5. openSSL学习-1

    上一节[openSSL学习-0]了解openSSL和安装,本节以des.h为例,学习DES分组密码算法 DES 加密分组 调用函数,实现一个分组的加解密(DES-ECB模式) #include < ...

  6. Kotlin:【继承】:继承、函数重载、类型检测、as类型转换、智能类型转换、Kotlin层次

  7. 变量-python

    变量-python 1. 变量的定义 变量是存储数据的地方,在程序运行时,变量的值可以改变.变量的定义格式如下: 变量名 = 数据 例如: a = 10 b = "hello" c ...

  8. 解决Git报“OpenSSL SSL_read: Connection was reset, errno 10054”错的问题

    1.问题描述 有时候当我们使用Git获取资源,会报"OpenSSL SSL_read: Connection was reset, errno 10054"的错误,出现该错误是因为 ...

  9. 四柱汉诺塔的 Frame-Stewart 算法及其最优性

    注:本文基本上是对参考文献 \(1\) 的翻译.这份论文是法语的,并且我没找到英语版本或中文介绍( 大家应该很熟悉汉诺塔了把,,,这里就不解释三柱汉诺塔了. Frame-Stewart 算法 对于有 ...

  10. FLink15--滑动窗口--SlidingWindiwApp

    一.依赖 https://www.cnblogs.com/robots2/p/16048648.html 二.代码 概念:滑动窗口有两个参数,窗口大小20和滑动大小6,6秒滑一次,统计近20秒数据 前 ...