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

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

类型,同样可以直接传递int或者float等数据类型; 可以给参数传递默认值,也可以设置参数是否为必须,防止因为漏传参数导致的脚本运行错误。...3. default参数与required参数 argparse库可以为参数设置是否必须以及默认值。 当一个参数被设置为必需时,如果为传入该参数则会发生报错。...而通过设置默认值的方式,可以给参数设置默认值。..._get_kwargs()) 另外需要注意的是,type的默认值为str。 2. 枚举类型参数 当我们希望我们的参数类型为枚举类型时,我们可以通过choices参数对可选参数进行限定。...参数默认值的设置方法 对于参数默认值的设定方法,除了在定义参数时使用default参数进行传入,还可以在定义参数之后使用set_defaults方法来对参数设置默认值

4K21
您找到你想要的搜索结果了吗?
是的
没有找到

python-argparse

,所以现在主要学习argparse argparse argparse 解析命令行选项,参数以及子命令 argparse 可以帮助更方便的写出用户友好的命令行接口。...help选项,默认为True prefix_chars 命令行选项的前缀,默认为’-‘ fromfile_prefix_chars 从文件中获取参数信息 argument_default 设置参数的全局默认值...parents 包含进其他ArgumentParser对象的参数设置 conflict_handler 定义解决冲突选项的策略 formatter_class 自定义帮助输出的类,控制输出的格式 prog...const 常量值 default 默认值 type 命令行参数应被转换的类型 int float complex file 可调用对象,包括函数等 choices 参数容许的值的容器,如果输入的参数不在此容器之内...解析后返回的名字,如不指定名字,则使用– 或者- 之后的名字 parse_args() 默认参数来自sys.argv 返回一个包含解析后的参数的namespace 其他功能 子命令 即命令之下包含又一层命令

77110

argparse模块用法实例详解

import argparse parser = argparse.ArgumentParser(description='命令行中传入一个数字') #type是要传入的参数的数据类型 help是该参数的提示信息...我们可以使用 arg.参数名来提取这个参数 import argparse parser = argparse.ArgumentParser(description='命令行中传入一个数字') #type...import argparse parser = argparse.ArgumentParser(description='命令行中传入一个数字') parser.add_argument('integers...默认值 add_argument中有一个default参数。有的时候需要对某个参数设置默认值,即如果命令行中没有传入该参数的值,程序使用默认值。如果命令行传入该参数,则程序使用传入的值。...具体请看下面的例子 import argparse parser = argparse.ArgumentParser(description='姓名') parser.add_argument('--

69920

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

import argparse parser = argparse.ArgumentParser(description='命令行中传入一个数字') #type是要传入的参数的数据类型 help是该参数的提示信息...我们可以使用 arg.参数名来提取这个参数 import argparse parser = argparse.ArgumentParser(description='命令行中传入一个数字') #type...import argparse parser = argparse.ArgumentParser(description='命令行中传入一个数字') parser.add_argument('integers...默认值 add_argument中有一个default参数。有的时候需要对某个参数设置默认值,即如果命令行中没有传入该参数的值,程序使用默认值。如果命令行传入该参数,则程序使用传入的值。...具体请看下面的例子 import argparse parser = argparse.ArgumentParser(description='姓名') parser.add_argument('--

58820

Python 命令行参数的3种传入方式

argparse 模块 argparse 模块也是 Python 自带的一个命令行参数模块,这个模块才是真的为了命令行参数而生的模块,相较之下 sys.argv 只是碰巧可以用在命令行参数上面而已。...('--year', '-y', help='year 属性,非必要参数,但是有默认值', default=2017) parser.add_argument('--body', '-b', help=...help message and exit --name NAME, -n NAME name 属性,非必要参数 --year YEAR, -y YEAR year 属性,非必要参数,但是有默认值...根据我的理解,这个属性可以选择参数在只提供符号而不输入实际的值的时候给予一个默认的值 nargs:这个属性规定了参数可以输入的个数 const:这属性跟 action 属性一起使用 default:这属性就是给参数设置一个默认值...2019/2/27 import click @click.command() @click.option('--name',default='Leijun',help='name 参数,非必须,有默认值

90910

社区精选 | OpenMMLab 的 cfg 模式和 Registry 机制

cfg 模式 在相当多的开源代码和工具箱中,是以传入命令行参数的形式来实现对训练过程的不同配置,具体而言,是采用 argparse 模块在 train.py 中实现对命令行参数的定义, 赋默认值和解析,...大体的流程如下: # 导入模块 import argparse # 创建解析对象 parser = argparse.ArgumentParser() # 添加命令行参数及默认值 parser.add_argument...最后,由于所有命令行参数的定义 (包括赋默认值) 和解析都是在 train.py 中,导致 train.py 与模型高度绑定,传入参数定义不同的模型就需要不同的 train.py。...与上面相对的,OpenMMLab 系列的一大特点是其所采用的 cfg 模式,即所有参数设置都是写在一个配置文件中, mmseg 中的 configs/fcn/fcn_r50-d8_512x512_20k_voc12aug.py...省略 ) 此外,这个配置文件可以通过继承更加基础的配置文件而来,并通过对部分参数设置的重写 (override) 来扩展功能,: _base_ = [ '..

98110

Python | 使用argparse解析命令行参数

今天是Python专题第27篇文章,我们来聊聊Python当中的命令行参数工具argparse。...比较好的办法就是把必要的参数设置成通过命令行传入的形式,这样我们只需要在运行的时候修改参数就可以了。...import argparse parser = argparse.ArgumentParser("For test the parser") parser.add_argument('test')...但有一点默认值的信息并不会print在help当中,所以我们需要自己在提示语当中告知使用者默认值是多少。 type 我们可以定义参数的默认值,当然也可以定义它的类型。...这是一个挺有意思的例子,仔细看会发现我们默认值设置成了1,但是可选值当中并没有1。这也是允许的,默认值可以不在可选值范围内,但是当我们传入1就会触发可选值校验。

1.9K10

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

前言 在第一篇“初探 argparse”的文章中,我们初步掌握了使用 argparse 的四部曲,对它有了一个基本的体感。但是它具体支持哪些类型的参数?这些参数该如何配置?...如果为指定参数,则其默认值分别为 False 和 True,: >>> parser.add_argument('--use', action='store_true') >>> parser.add_argument...: >>> parser = argparse.ArgumentParser(prog='CMD') >>> parser.add_argument('--version', action='version...>>> parser.parse_args(['--version']) CMD 1.0 参数类别 如果说 参数动作 定义了解析器在接收到参数后该如何处理参数,那么 参数类别 就是告诉解析器这个参数的信息...如果不指定该值,则参数默认值为 None。

66630

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

简介 argparse 模块主要用于处理 Python 命令行参数和选项,程序定义好所需参数后,该模块会通过 sys.argv 解析出那些参数;除此之外,argparse 模块还会自动生成帮助和使用手册...使用 argparse 模块,我们可以轻松的编写出用户友好的命令行接口。 2....使用 我们先来看一个简单示例: import argparse # 创建解析对象 parser = argparse.ArgumentParser() # 解析 parser.parse_args()...usage: test.py [-h] optional arguments: -h, --help show this help message and exit 如果使用未定义的参数会报错,:...:当需要从文件中读取其他参数时,用于标识文件名的前缀字符集合(默认值:None) argument_default:参数的全局默认值默认值:None) conflict_handler:解决冲突选项的策略

57220

玩转 Python 命令行:4 大主流工具库的对比

help='a num for the accumulator') # 添加选项参数 --sum,该参数被 parser 解析后所对应的属性名为 accumulate # 若不提供 --sum,默认值为...声明式的好处在于只要你掌握了声明式的语法,那么定义命令行的信息就会很简单。 以下示例为 docopt 实现的 计算器程序: # 1....中 add_argument 是等价的,然后 docopt 便会根据这个信息把命令行参数转换为一个字典。...对比与 argparse: 对于更为复杂的命令程序,信息的定义上 docopt 会更加简单 然而在业务逻辑的处理上,由于 argparse 在一些简单参数的处理上会更加便捷(比如示例中的情形),相对来说...你都不需要定义参数类型,fire 会根据输入和参数默认值来自动判断,这无疑进一步简化了实现过程。

1.5K10

Python 中argparse模块的使用

Python解析命令行读取参数有两种方式:sys.argv和argparse 1 sys.argv 如果脚本很简单或临时使用,没有多个复杂的参数选项,可以直接利用sys.argv将脚本后的参数依次读取(...,并且类型不统一,那么argparse可以很好的解决这些问题,下面一个实例解释了argparse的基本使用方法 import argparse # description参数可以用于描述脚本的参数作用,...num_epochs',choices=[5,10,20],default=5,type=int,help='Number of epochs.') choices:候选值,输出参数必须在候选值里面,否会出现下面的结果...NUM_LAYERS demo.py: error: argument --num_epochs: invalid choice: 30 (choose from 5, 10, 20) default:默认值...,如果不输入参数,则使用该默认值 >python demo.py -t --num_layers 10 Namespace(num_epochs=5, num_layers=10, toy=True)

83900

在Python中创建命令行界面的最佳方式

根据程序的不同,这些参数可用于添加其他特性,查看帮助文档、指定输出文件或启用测试特性,这些特性在正常使用时可能会出现问题。...作为程序员,您可以定义要接受的参数,而argparse将知道如何从sys中解析这些参数。当用户给程序提供无效参数时,Argparse还会自动生成帮助和使用消息,并输出错误。...对于这个例子,我们将域参数设置为必需的,而ofile和lines参数将是可选的。...我们可以添加必要的参数——域,: parser.add_argument('--domain', '-d', required=True, help='domain name of the website...现在使用argparse添加额外的参数。如果没有指定需要哪些参数,argparse将假定它们是可选的。你也可以设置参数的类型,对于——lines,我们取一个整数。

2.4K20

python入门:argparse浅析 nargs=+作用

7、prefix_chars:options前的字符,默认为’-‘,可以添加其他字符,’-+’,但是如果没有包括’-‘,那么对应的option’-h’就无法解析。...8、fromfile_prefix_chars:有时会使用文件给parse_args()传入参数,为了能够识别文件字符串,”demo.txt”,需要设置此值,”@”,那么所有以此字符为开头的字符串都被当作是文件...文件中的’-f\nbar’会被解析成[‘-f’,’bar’]。...9、argument_default:一般情况下,默认值使用add_argument()来添加,或者使用set_defaults()设置一些键值对来添加。...时,可选项出现在命令行中,但之后并没有跟随赋值的参数,作为默认值传给此可选项。 5、default:默认值

12.5K10
领券