argparse.ArgumentParser()用法解析

2023-11-05

此模块有中文文档,建议看到此文的读者链接到中文文档查看,本文只是自己学习、个人理解的重点总结

  • argparse模块 官方文档

    argparse是一个Python模块:命令行选项、参数和子命令解析器。

    argparse 模块可以让人轻松编写用户友好的命令行接口。程序定义它需要的参数,然后 argparse 将弄清如何从 sys.argv 解析出那些参数。 argparse 模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息。

  • 使用流程

    1. 创建解析器

      parser = argparse.ArgumentParser(description='Process some integers.')
      

      使用 argparse 的第一步是创建一个 ArgumentParser 对象。

      ArgumentParser 对象包含将命令行解析成 Python 数据类型所需的全部信息。

    2. 添加参数

      parser.add_argument('integers', metavar='N', type=int, nargs='+', help='an integer for the accumulator')
      

      给一个 ArgumentParser 添加程序参数信息是通过调用 add_argument() 方法完成的。

    3. 解析参数

      >>> parser.parse_args(['--sum', '7', '-1', '42'])
      Namespace(accumulate=<built-in function sum>, integers=[7, -1, 42])
      

      ArgumentParser 通过 parse_args() 方法解析参数。

  • ArgumentParser 对象

    class argparse.ArgumentParser(prog=None, usage=None, description=None, epilog=None, parents=[], formatter_class=argparse.HelpFormatter, prefix_chars='-', fromfile_prefix_chars=None, argument_default=None, conflict_handler='error', add_help=True, allow_abbrev=True)
    
    • prog - 程序的名称(默认:sys.argv[0]
    • usage - 描述程序用途的字符串(默认值:从添加到解析器的参数生成)
    • description - 在参数帮助文档之前显示的文本(默认值:无)
    • epilog - 在参数帮助文档之后显示的文本(默认值:无)
    • parents - 一个 ArgumentParser 对象的列表,它们的参数也应包含在内
    • formatter_class - 用于自定义帮助文档输出格式的类
    • prefix_chars - 可选参数的前缀字符集合(默认值:’-’)
    • fromfile_prefix_chars - 当需要从文件中读取其他参数时,用于标识文件名的前缀字符集合(默认值:None
    • argument_default - 参数的全局默认值(默认值: None
    • conflict_handler - 解决冲突选项的策略(通常是不必要的)
    • add_help - 为解析器添加一个 -h/--help 选项(默认值: True
    • allow_abbrev - 如果缩写是无歧义的,则允许缩写长选项 (默认值:True
  • add_argument() 方法

    ArgumentParser.add_argument(name or flags...[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest])
    
    • name or flags - 一个命名或者一个选项字符串的列表,例如 foo-f, --foo
    • action - 当参数在命令行中出现时使用的动作基本类型。
    • nargs - 命令行参数应当消耗的数目。
    • const - 被一些 actionnargs 选择所需求的常数。
    • default - 当参数未在命令行中出现时使用的值。
    • type - 命令行参数应当被转换成的类型。
    • choices - 可用的参数的容器。
    • required - 此命令行选项是否可省略 (仅选项可用)。
    • help - 一个此选项作用的简单描述。
    • metavar - 在使用方法消息中使用的参数值示例。
    • dest - 被添加到 parse_args() 所返回对象上的属性名。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

argparse.ArgumentParser()用法解析 的相关文章

  • 文件作为 argparse 的命令行参数 - 如果参数无效,则出现错误消息

    我目前正在使用 argparse 如下所示 import argparse from argparse import ArgumentParser parser ArgumentParser description ikjMatrix mu
  • Python,argparse:如何使 nargs=2 与 type=str 和 type=int

    我花了一些时间在 argparse 文档上 但我仍然在为我的程序中的一个选项使用这个模块而苦苦挣扎 parser add argument r rmsd dest rmsd nargs 2 help extract the poses th
  • argparse:如何配置多项选择、多个值、可选参数?

    我正在尝试设置一个参数 该参数接受给定选项列表中的一个或多个值 但这不是强制性的 我正在尝试这个 有几个变体也无法按预期工作 parser add argument FLAGS nargs choices X Y Z ALL 我希望从选择列
  • 如果另一个互斥参数为 true,则将默认值设置为 false

    我意识到这很像使用 argparse 模块在 Python 中设置两个互斥选项的默认选项 https stackoverflow com questions 9365486 setting default option in python
  • 在 argparse 中使用变量 arg 名称

    我有一个上游系统 它使用不同的参数名称调用我的程序 例子 foo xyz1 10 xyz2 25 xyz3 31 我希望 argparsing 的结果为 xyz 10 25 31 我的参数名称有一个共同的前缀 但不幸的是至少必须有不同的数字
  • 框架 argparse - 检查是否设置了标志

    我想以这种方式使用我的脚本 python script py x 现在我使用此命令运行它 python script py x y My code parser ArgumentParser parser add argument x x
  • 使用 argparse 解析字符串

    所以我希望argparse的输入是一个字符串而不是命令行 例如 python3 some script py arg1 arg2 arg3 我想给 argparse 字符串 arg1 arg2 arg3 import argparse co
  • argparse 子解析器整体帮助输出

    我的 argparse 在顶层只有 3 个标志 store true 其他所有内容都通过子解析器处理 当我跑步时myprog py help 输出像平常一样显示所有子命令的列表 sub1 sub2 sub3 sub4 所以 默认设置效果很好
  • 在 Snakemake 脚本中使用 argparse

    是否可以将自定义命令行参数传递给snakemake脚本 我已经尝试过了 但是用以下命令执行 Snakefileargparse结果出错snakemake error unrecognized arguments zz 下面是一个示例脚本 i
  • 如何使用argparse打开文件?

    我想使用打开文件进行阅读argparse 在 cmd 中它必须如下所示 my program py filepath 这是我的尝试 parser argparse ArgumentParser parser add argument fil
  • 使用 argparse 调用函数[重复]

    这个问题在这里已经有答案了 我在从 argpars 调用函数时遇到问题 这是我的脚本的简化版本 可以打印我给 s 或 p 的任何值 import argparse def main parser argparse ArgumentParse
  • Python argparse:metavar 和 action=store_true 一起

    我在 Python 中使用 argparse 模块来解析在命令行界面中键入的参数 我对子解析器对象进行了以下 add argument 调用 submit parser add argument pv provision metavar P
  • 解释 lambda argparse.HelpFormatter(prog, width)

    此代码可以正常工作以增加帮助文本的宽度 但尚不清楚 lambda 函数是做什么的 编辑 为了澄清 问题不是为什么 lambda 函数通常很有用 但反而 参数解析器初始化代码如何使用 lambda 函数 import argparse imp
  • 从Python中的ArgumentParser解析的args创建arg字符串[重复]

    这个问题在这里已经有答案了 如果我有一个argparser ArgumentParser 加上返回的命名空间parser parse args 是否有一种简单的方法可以将命名空间转换回 argv 列表 以便它们可以传递回程序 本质上 par
  • Python argparse 条件要求

    如何设置 argparse 如下 if 2 is on the command line no other arguments are required if 2 is not on the command line 3 and 4 arg
  • Python argparse 值范围帮助消息外观

    我有一个程序的参数 它是 1 100 之间的整数 我只是不喜欢它在使用 argparse 时在 h 帮助消息中显示的方式 它实际上列出了 0 1 2 3 4 5 等 有什么方法可以改变这一点或以其他方式表示它吗 Thanks EDIT 对于
  • Argparse:将父解析器与子解析器混合

    我想写一个简单的工具任意数量的输入文件并执行one对他们每个人进行操作 语法非常简单 mytool operation input1 input2 inputN 其中一些操作可能需要额外的参数 mytool operation op arg
  • 如何在Python的argparse中对同一组参数调用parse_args()两次?

    简化的测试用例 我有一个需要两个参数的脚本 第一个是整数列表 第二个是必须包含在第一个参数的整数集中的单个整数 例如 python argtest py valid nums 1 2 3 num 2 应该可以 但是 python argte
  • 如何使用 argparse 将列表作为命令行参数传递?

    我正在尝试将列表作为参数传递给命令行程序 有没有一个argparse https docs python org 3 library argparse html将列表作为选项传递的选项 parser add argument l list
  • 在 python 中记录 argparse 的值

    我正在尝试在 python 中使用 argparse 和logging 模块 我运行的程序有很多可能的选项 并且我已经成功实现了 argparse 模块来处理此任务 我想记录程序运行时每个选项的值并将其发送到日志文件 我尝试了以下几件事 并

随机推荐

  • open3d 最远距离采样FPS

    关键代码 FPS pcd down pcd farthest point down sample 1000 pcd CloudPoint 如果是mesh采样 不是FPS pcl mesh sample points poisson disk
  • 骑马与砍杀服务器修复,骑马与砍杀21.3.1公共版和热修说明 修复联机模式

    骑马与砍杀21 3 1公共版和热修说明 修复联机模式 北京时间5月9日 骑马与砍杀2霸主发布了最新更新 以下是更新日志说明 公共版 版本 Native e1 3 1 SandboxCore e1 3 1 Sandbox e1 3 1 Sto
  • eclipse创建第一个JSP项目

    前言 本文的内容由四个部分组成 分别为 Tomcat的安装与配置 创建第一个JSP项目 打包JSP项目到Tomcat服务器上并在浏览器中运行 eclipse的一些java Web的一些设置 1 Tomcat安装与配置 到Tomcat官网下载
  • 【WiFi】wifi芯片架构与原理说明

    目录 1 概述 2 芯片架构 3 工作原理 4 总结 1 概述 WiFi芯片是一种用于无线网络通信的集成电路 它负责将数据转换为无线信号并进行传输 下面是关于WiFi芯片架构和原理的简要说明 2 芯片架构 芯片架构 WiFi芯片通常由以下几
  • ENet分割笔记

    https github com cswhshi segmentation blob master ENet py 权重1 21m 但是内存占用较大 2080ti上batch size为8 coding utf 8 import torch
  • 菜鸟学习历程【17】进程控制编程

    进程控制编程 进程 进程是一个具有一定独立功能的程序的一次运行活动 同时也是资源分配的最小单元 进程 程序 程序执行的实例 放到磁盘的可执行文件 进程不可在计算机之间迁移 程序通常对应着文件 静态和可以复制 动态 静态 暂时 进程是一个状态
  • Unity Transparent Video

    https medium com pofu lu unity transparent video E7 94 A8 videoplayer E6 88 96 avpro E6 92 AD E6 94 BE E9 80 8F E6 98 8E
  • 增量式爬虫

    增量式爬虫 增量式爬虫项目 1 新建爬虫项目 2 配置setting py文件 3 创建爬虫文件 3 1 新建爬虫文件的时候将命令换成 3 2 确定要爬取的网页的url 爬取读书网信息 查找url规律 查看底部的导航栏 右键检查元素 不能确
  • protobuf生成golang和grpc代码踩坑记

    错误提示 seems to be defined in proto which is not imported by proto To use it here please add the necessary import 这个地方主要是因
  • 计算机度分秒在线,角度计算器度分秒在线

    角度计算器度分秒在线是一款数学公式计算器软件 对于想要找到正确的答案 计算器可以直接帮助你 你只需要按照要求输入对应的数字 计算器就会帮你准确快速的算出答案 现在手机app下载就能长期免费使用 角度计算器度分秒在线使用说明 输入一 此输入必
  • 【细节】Vue3基本使用笔记

    vite 文档 https cn vitejs dev guide 安装 使用 NPM npm create vite latest 使用 Yarn yarn create vite 使用 PNPM pnpm create vite 选择项
  • atd服务报错 Failed with result ‘exit-code‘

    有需求需要测试下 at 单次计划任务 系统环境 isoftserveros v5 1 oe1 aarch64 系统默认没有at软件包 使用本地yum源安装 yum y install at 安装完后不小心执行了下atd atd 因为at计划
  • 嵌入式设计中对于只有两种状态的变量存储设计,如何高效的对循迹小车进行偏差量化

    前言 1 在嵌入式程序设计中 我们常常会要对各类传感器进行数据存储 大多时候的传感器 例如红外光传感器 返回的数据要么是0 要么是1 因此 只需要一bit就能够存储 而很多人却常常使用char型数组存储 这样真正申请到的内存只使用了八分之一
  • Java基础-内部类

    注意 在成员内部类中访问所在外部类对象 格式 外部类名 this
  • ARP代理

    一个物理网络子网中的源主机向另一个物理网络子网中的目的主机发送ARP Request 和源主机直连的网关用自己接口的mac地址代替目的主机回复 arp reply 这个过程成为arp代理 arp代理的几种方式以及每种方式针对的问题如下图所示
  • 2023届电子设计大赛E题(控制类)

    先上视频 1 首先我们来看看题目 题目还是比较简单明白的 基础题只需要用到一个云台去做这个题目 发挥题需要用到两个云台去解决 首先前几题除了写死没有更好的办法了 我们直接来说一下发挥题怎么做吧 怎么去解决这个问题吧 做发挥题的时候我是遇到了
  • 西电B测——基于simulink的2PSK和2DPSK调制解调系统实现

    这是学校的B级测试实验 仅供学习交流使用 误码率曲线绘制需要用到bertool工具 bertool工具教程 通信专业Simulink 画误码率曲线 使用bertool工具 Enpiyahh的博客 CSDN博客 simulink误码率曲线 报
  • MySQL中对于事务完整的超详细介绍

    MySQL事务详细理解 一 事务基本介绍 1 什么是事务 2 为什么出现事务 3 事务四大特性 原子性 一致性 隔离性 持久性 4 事务的隔离级别 四种级别 不同隔离级别所具有的问题 二 操作演示 1 自动提交和手动提交 2 回滚操作 3
  • 组和OU介绍

    组和OU介绍 https daiker gitbook io windows protocol ldap pian 9 0x00 前言 这篇文章主要介绍AD里面的组和组织单位 OU 0x01 一些LDAP高级搜索语法 1 LDAP 查找中的
  • argparse.ArgumentParser()用法解析

    此模块有中文文档 建议看到此文的读者链接到中文文档查看 本文只是自己学习 个人理解的重点总结 argparse模块 官方文档 argparse是一个Python模块 命令行选项 参数和子命令解析器 argparse 模块可以让人轻松编写用户