首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

python argparse 位置参数 可选值 默认值

记录一下在py中使用argparse解析位置参数时, 位置参数设置为choice(列表)时, 默认值的问题.算个小坑吧, 所以记录一下.直接使用default先来看看直接使用default的情况....我们的想法是 第一个位置参数为 start/stop/status 第二个位置参数为monitor/transclient/all, 没写的时候默认为 status allimport argparseparser...= argparse.ArgumentParser(add_help=True, description='ei client')parser.add_argument('action', default..., 默认值未生效其实官方有说明的...图片配合nargs使用defaultimport argparseparser = argparse.ArgumentParser(add_help=True, description.......图片附python官网configparser链接: https://docs.python.org/zh-cn/3.11/library/configparser.html官网资料很全的, 仔细看

2.9K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    java中给方法的参数设置默认值,java设置可选参数

    今天在调整一个定时任务时需要将固定写死的查询日期通过外部传参来控制,如果没有传值给个默认值,于是了解了下java函数的参数默认值在 Java 中,方法的参数没有直接提供默认值的功能,但可以通过方法重载或者使用可选参数的方式实现类似的效果...方法重载(Method Overloading):可以编写多个具有不同参数的方法来实现类似的功能,其中某些方法可以省略一些参数,并在方法内部使用默认值。...如果只传递一个参数给 myMethod,第二个参数将使用默认值。...10,如果提供了参数 b,则使用提供的值 // 使用参数 a 和 value 进行处理逻辑}在这个例子中,myMethod 方法接受两个参数,其中第二个参数 b 是使用 Optional的 orElse 方法获取参数 b 的值,如果没有提供参数 b,则使用默认值 10。

    7.7K20

    argparse------用于命令行选项、参数和子命令的解析器

    这与默认值不同,默认值中项目是由自己生成的。 '?'. 如果可能,一个参数将从命令行中使用,并作为单个项目生成。如果不存在命令行参数,则会生成默认值。...这将创建一个可选参数,后面可以跟着零个或一个命令行参数。在解析命令行时,如果遇到选项字符串后面没有命令行参数,那么将使用const的值。有关示例,请参见nargs描述。...,则解析器将解析该值,就像解析命令行参数一样。...option_string参数是可选的,如果操作与位置参数关联,则该参数将不存在。 方法可以执行任意操作,但通常会基于dest和值在名称空间上设置属性。...对参数的描述: title - 帮助输出中子解析器组的标题;默认情况下,如果提供描述,则使用“子命令”,否则使用title作为位置参数。

    7K20

    argparse模块用法实例详解

    import argparse parser = argparse.ArgumentParser(description='命令行中传入一个数字') #type是要传入的参数的数据类型 help是该参数的提示信息...例如我们把上面的type=str,改成type=int,这时候我们就可以进行四则运算。...在命令行中输入 python demo.py 1 2 3 4, 运行结果为 10 位置参数 在命令行中传入参数时候,传入的参数的先后顺序不同,运行结果往往会不同,这是因为采用了位置参数,例如 import...可选参数 为了在命令行中避免上述位置参数的bug(容易忘了顺序),可以使用可选参数,这个有点像关键词传参,但是需要在关键词前面加--,例如 import argparse parser = argparse.ArgumentParser...默认值 add_argument中有一个default参数。有的时候需要对某个参数设置默认值,即如果命令行中没有传入该参数的值,程序使用默认值。如果命令行传入该参数,则程序使用传入的值。

    76420

    Python笔记:外部参数传入考察(一)argparse库

    3. default参数与required参数 argparse库可以为参数设置是否必须以及默认值。 当一个参数被设置为必需时,如果为传入该参数则会发生报错。...而通过设置默认值的方式,可以给参数设置默认值。...不同类型参数传入 现在,我们来考察不同类型的参数如何通过argparse库来进行传入。 1...._get_kwargs()) 另外需要注意的是,type的默认值为str。 2. 枚举类型参数 当我们希望我们的参数类型为枚举类型时,我们可以通过choices参数对可选参数进行限定。...参数默认值的设置方法 对于参数默认值的设定方法,除了在定义参数时使用default参数进行传入,还可以在定义参数之后使用set_defaults方法来对参数设置默认值。

    4.3K21

    Python 命令行之旅:深入argparse (一)

    如果为指定参数,则其默认值分别为 False 和 True,如: >>> parser.add_argument('--use', action='store_true') >>> parser.add_argument...比如,参数是字符串呢?还是布尔类型呢?参数是在几个值中可选的呢?还是可以给定值,等等。 下面,我们将逐一介绍不同类型的参数。 可选参数 可选参数 顾名思义就是参数是可以加上,或不加上。...可选参数通常用于:用户提供一个参数以及对应值,则使用该值;若不提供,则使用默认值。...Namespace(num=5) 参数默认值 参数默认值 用于在命令行中不传参数值的情况下的默认取值,可通过 default 来指定。...如果不指定该值,则参数默认值为 None。

    71030

    人生要找对路,代码要找对路口 | argparse实例详解

    import argparse parser = argparse.ArgumentParser(description='命令行中传入一个数字') #type是要传入的参数的数据类型 help是该参数的提示信息...例如我们把上面的type=str,改成type=int,这时候我们就可以进行四则运算。...在命令行中输入 python demo.py1234, 运行结果为 10 位置参数 在命令行中传入参数时候,传入的参数的先后顺序不同,运行结果往往会不同,这是因为采用了位置参数,例如 import argparse...可选参数(重点——因为经常会用到) 为了在命令行中避免上述位置参数的bug(容易忘了顺序),可以使用可选参数,这个有点像关键词传参,但是需要在关键词前面加 --,例如 import argparse...默认值 add_argument中有一个default参数。有的时候需要对某个参数设置默认值,即如果命令行中没有传入该参数的值,程序使用默认值。如果命令行传入该参数,则程序使用传入的值。

    60720

    python-argparse

    -h –help选项,默认为True prefix_chars 命令行选项的前缀,默认为’-‘ fromfile_prefix_chars 从文件中获取参数信息 argument_default 设置参数的全局默认值...version 版本信息 nargs 参数的不同数量 N 整数,参数的个数 ?...const 常量值 default 默认值 type 命令行参数应被转换的类型 int float complex file 可调用对象,包括函数等 choices 参数容许的值的容器,如果输入的参数不在此容器之内...因为是可选参数,而又必须提供参数,自相矛盾,应避免使用 help 对此参数的简短描述 metavar 此参数在usage信息中的名字,实际名字未变,仍为dest 所定义 dest 经过parse_args...() 解析后返回的名字,如不指定名字,则使用– 或者- 之后的名字 parse_args() 默认参数来自sys.argv 返回一个包含解析后的参数的namespace 其他功能 子命令 即命令之下包含又一层命令

    80410

    【python】命令行参数argparse用法详解

    第一个例子中,-v没有指定任何参数也可,其实存的是True和False,如果出现,则其值为True,否则为False 类型type 默认的参数类型为str,如果要进行数学计算,需要对参数进行解析后进行类型转换...,如果不能转换则需要报错,这样比较麻烦 argparse提供了对参数类型的解析,如果类型不符合,则直接报错。...第一个测试为计算2的平方数,类型为int,正常 第二个测试为一个非int数,报错 第三个为打印帮助信息 可选值choices=[] 上述action的例子中定义了默认值为True和False的方式,如果要限定某个值的取值范围...测试1, 2, 3 为可选值范围,通过其值,打印不同的格式输出; 测试4的verbosity值不在可选值范围内,打印错误 测试5打印帮助信息 自定义帮助信息help 上面很多例子中都为help赋值,如...可以看到如果不指定-v的值,args.verbosity的值默认为1,为了更清楚的看到默认值,也可以直接打印进行测试。 IELTS a bit jealous adj.

    1K30

    Python 模块:argparse

    ,用于标识文件名的前缀字符集合(默认值:None) argument_default - 参数的全局默认值(默认值:None) conflict_handler - 解决冲突选项的策略(通常是不必要的)...add_help - 为解析器添加一个 -h/--help 选项(默认值:True) allow_abbrev - 如果缩写是无歧义的,则允许缩写长选项 (默认值:True) 以下部分描述这些参数如何使用...这和默认的元素本身是不同的。 '?'。如果可能的话,会从命令行中消耗一个参数,并产生一个单一项。如果当前没有命令行参数,则会产生 default 值。...注解 因为用户期望选项是可选的,所以必选项大部分地被认为是坏格式,因此如果可能的话,避免使用。 help help 的值是一个包含这个参数的简短描述的字符串。...在最简单的情况下,可选项和其值作为两个不同的参数传递进去: >>> parser = argparse.ArgumentParser(prog='PROG') >>> parser.add_argument

    2.5K10

    如何使用Python的命令行参数——创建自己的Python命令行参数脚本的简单指南

    conda install argparse 定义位置参数和可选参数 创建一个ArgumentParse的对象parser,在ArgumentParser中对该脚本做简要描述。...可选参数是输入一个关键字和等号的关键字参数,输入内容是可选的。...定义Boolean参数 将以上代码加入到之前的脚本中。定义一个可选参数default=True,这样即便不给该参数输入任何内容,其值默认为True。...如果需要整数参数,也可以将其定义为type=int。 help中的%(default)s) 用来检索参数中的默认值。这是为了确保description不是硬编码,能随着默认值灵活更改。...默认情况下isFullTime为True,因此如果不给isFullTime输入任何参数,则输出结果为Alex是全职员工(Alex is a full time employee)。

    2.5K00

    Python 基础(二十一):argparse 模块

    看一下方法中每一个参数的含义: 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) parse_args(args=None, namespace=None) 用来解析参数,看一下参数说明: args:要分析的字符串列表,默认取自

    60820

    Python 的 argparse 模块的作用,以及分享一个通用代码模板

    它接收字符串参数 v 并将其转换为布尔值。如果 v 已经是布尔值,则按原样返回。否则,它会检查 v 的小写版本是否与函数中定义的 true 或 false 表示相匹配。如果匹配,则返回相应的布尔值。...default:如果用户未提供某个参数,将使用默认值。 parser.add_argument 依次为解析器添加了各个参数。...帮助参数提供了参数的说明。类似地,剩下的代码为解析器添加了更多参数,每个参数都有各自的名称、数据类型、默认值和帮助说明。...总的来说,这段代码使用 argparse 设置了一个参数解析器,定义了多个命令行参数及其类型、默认值和帮助信息,解析了所提供的参数,最终以字典形式返回。...这有助于防止用户输入错误的选项或参数,从而提高程序的健壮性。 位置参数和可选参数的灵活组合:argparse 允许您定义位置参数和可选参数,以及它们的组合。

    21600

    python argparse使用

    在不同环境部署项目时,由于不同的配置,部署时难免会改变部署的方式,而且基本使用版本管理工具,比如git或svn进行下拉代码部署项目时,尽可能的不变动代码(如果变动代码,下次下拉代码前必须要使用git...解决方案之一是 在启动命令时添加参数,通过这个参数指定不同的配置文件从而达到部署不同环境的效果 使用的包为 argparse 。如下为使用案例。...type:入参值类型 default:默认值 choices:参数值范围; 使用案例:python argparse_rgc.py -a develop...-b ,则存储变量值为True,默认是 False; 使用案例:python argparse_rgc.py -b # 值为 True...python argparse_rgc.py # 值为 False """) # 设置 参数值的个数 parser.add_argument

    97410

    SQL命令 INSERT(一)

    使用架构搜索路径(如果提供)或默认架构名称将非限定名称与其架构匹配。 column - 可选 - 与提供的值列表顺序对应的列名或以逗号分隔的列名列表。如果省略,值列表将按列号顺序应用于所有列。...它为查询结果集中每一行的所有指定列(字段)插入数据值,并将未指定的列值默认为NULL或定义的默认值。...如果INSERT请求由于唯一键冲突而失败(对于某个唯一键的字段,存在与为INSERT指定的行具有相同值的行),则它会自动转换为该行的UPDATE请求,并且INSERT或UPDATE使用指定的字段值更新现有行...如果指定列列表,则各个值必须在位置上与列列表中的列名相对应。 值赋值语法 插入记录时,可以通过多种方式为指定列赋值。默认情况下,所有未指定的列必须接受NULL或具有定义的默认值。...如果指定列名和相应的数据值,则可以省略定义了默认值或接受NULL的列。INSERT可以为大多数字段数据类型插入默认值,包括流字段。 如果未指定列名,则数据值必须在位置上与定义的列列表相对应。

    6K20

    python argparse处理命令行参数

    ,当运行-h来查看脚本的帮助信息时,默认使用name或者dest的值,如果指定了metavar,则参数名称显示为metavar的值, 该参数仅在显示帮助信息时有用,没有其他实际含义,用法如下 >>> parser.add_argument...,指定了参数的可选范围,如果提供的值超出范围,程序会报错, 用法如下 >>> parser.add_argument('-t','--threads', choices = range(21), type...,默认值为store, 只存储对应的值,还有其他的可选值,用法如下 # 默认action = store >>> parser.add_argument('name' ) _StoreAction(option_strings...,默认参数都是一个值,指定该参数,则参数的值用列表存储,比如nargs=1, 此时参数为长度为1 的列表,用法如下 # 指定一个具体的数值,对参数的个数进行限定 # 提供的参数个数不对,会报错 >>>...表示参数的值为0个或者多个,用default指定没有提供参数时的默认值 >>> parser.add_argument('chrs', nargs = '?'

    1.6K20

    python argparse(参数解析

    ===>程序简要说明(字符串),输出help时会显示 p = argparse.ArgumentParser(description=show) # 创建一个参数,如果参数名称前没有‘-’或‘--’则该参数为必填参数...# 创建一个‘-’参数,如果参数前有‘-’则为可选参数。在输入‘-参数’后再赋值。注意:如果参数有别名则实际参数值是赋给了别名。...例:type=int action:当该参数值为"store_true"时表示创建的是一个机关,带该参数时则表示开启该机关(创建的参数(机关)此时的值为True),不带该参数时则表示关闭该机关(创建的参数...(例:p.add_argument('--v',action='store_true') ===>如果带该参数则‘v’的值为true) choices:限定参数值范围(规定只接收规定列表中的值),值为列表...例:choices=[1,2,3] default:指定参数默认值。

    1.2K10

    C#5.0新增功能02 调用方信息

    若要获取此信息,可以使用应用于可选参数的特性,每个特性都具有默认值。...不能将调用方信息特性应用于未指定为可选的参数。 调用方信息特性不会使参数成为可选参数。 相反,它们会在忽略此参数时影响传入的默认值。 在编译时,调用方信息值将作为文本传入中间语言 (IL)。...与异常的 StackTrace 属性的结果不同,这些结果不受模糊处理的影响。 你可显式提供可选参数来控制调用方信息或隐藏调用方信息。...特性构造函数 要应用特性的方法或属性的名称。 如果该特性是成员中的任何元素(如参数、返回值或泛型参数),则此结果是与该元素关联的成员的名称。...无包含的成员(例如,程序集级别或应用于类型的特性) 可选参数的默认值。

    50310

    Storage关键字IdFunction,IdLocation,IndexLocation,SqlRowIdName

    描述如果持久化类不使用IdKey来确定对象ID值,则该元素允许指定用于分配ID值的函数($increment函数或$sequence函数)。...如果类使用$increment函数,则通过对元素中定义的全局位置中存储的值进行递增来创建新的id。...当随后的数据被吸收时,这些空白可能会也可能不会被填补。 一个副作用是,具有较高ID的类的实例不一定比具有较低ID的类的实例更新。...默认值如果未指定,则类编译器将生成元素的值。通常,该值是^MyApp.MyClassD(其中MyApp.MyClass是类名),但是,它可能会根据许多因素而有所不同。...如果未指定,则索引位置为^MyApp.MyClassI(其中MyApp.MyClass是类别名称)。请注意,还可以单独指定每个索引的存储。默认值元素的默认值为空字符串。

    29620
    领券