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

argparse中的可选nargs变量

是用来指定命令行参数的数量的变量。它可以接受以下几种取值:

  1. 如果nargs的值是一个整数,表示该参数接受固定数量的参数。例如,nargs=2表示该参数接受两个参数值。
  2. 如果nargs的值是'?',表示该参数可以接受零个或一个参数值。如果没有提供参数值,则该参数的值为默认值。
  3. 如果nargs的值是'*',表示该参数可以接受任意数量的参数值,包括零个。
  4. 如果nargs的值是'+',表示该参数可以接受至少一个参数值。

使用nargs变量可以灵活地定义命令行参数的数量,以满足不同的需求。

下面是一些示例:

  1. 假设有一个命令行程序,需要接受两个文件名作为参数:
代码语言:python
复制
import argparse

parser = argparse.ArgumentParser()
parser.add_argument('files', nargs=2, help='input files')
args = parser.parse_args()

# 使用args.files[0]和args.files[1]获取两个文件名
  1. 假设有一个命令行程序,需要接受一个可选的输出文件名作为参数,默认为标准输出:
代码语言:python
复制
import argparse

parser = argparse.ArgumentParser()
parser.add_argument('-o', '--output', nargs='?', default=sys.stdout, help='output file')
args = parser.parse_args()

# 使用args.output获取输出文件名
  1. 假设有一个命令行程序,需要接受任意数量的整数作为参数,并计算它们的和:
代码语言:python
复制
import argparse

parser = argparse.ArgumentParser()
parser.add_argument('numbers', nargs='*', type=int, help='input numbers')
args = parser.parse_args()

# 使用sum(args.numbers)计算输入数字的和

推荐的腾讯云相关产品:腾讯云函数(SCF),腾讯云容器服务(TKE),腾讯云弹性MapReduce(EMR),腾讯云数据库(TencentDB)等。你可以在腾讯云官网上找到更多关于这些产品的详细信息和介绍。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

pythonargparse 命令行参数解析包

简介argparse 是python自带命令行参数解析包,可以用来方便地读取命令行参数,当你代码需要频繁地修改参数时候,使用这个工具可以将参数和代码分离开来,让你代码更简洁,适用范围更广使用方法导入...parser.parse_args() name = args.name print('name:%s' % name)#输出$ python name.py --name zcyname:zcy参数解析1、变量名...如:python demo.py zcy2、default参数:提供参数默认值3、required:默认情况下,可选项(前面有'-')被认为并不一定需要出现在命令行参数,但是如果设置了required...,可使用-h(–help)查看该信息7、nargs:设置参数个数格式parser.add_argument('-name', nargs=x)x 候选值以及含义值含义N 参数绝对个数(如:3)‘?...0或1个参数‘*’0或多个参数‘+’1或者多个参数# file-name: nargs.pyimport argparsedef get_parser(): parser = argparse.ArgumentParser

75330

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

补充知识:argparse解析命令行参数 argparse简介: 在argparse,最常用就是上述三部分了:创建一个ArgumentParser对象;使用add_argument()方法来为创建...自定义,通过定义一个argparse.Action子类来实现。实际上,上面的这些可选项都是通过这种形式定义。 3、nargs:ArgumentParser对象通常将一个动作与一个命令行参数关联。...特殊是,对于可选项,如果命令行中出现了此可选项,但是之后没有跟随赋值参数,则此时给此可选项并不是赋值default值,而是赋值const值。 nargs=*,和N类似,但是没有规定列表长度。...一种是定义nargs=’?’时,可选项出现在命令行,但之后并没有跟随赋值参数,作为默认值传给此可选项。 5、default:默认值。...或nargs=’*’,那么当没有参数赋值给该项时,会使用default定义值。 而default=argparse.SUPPRESS时,则表示命令行未出现某一项时,不会对它进行默认赋值。

12.5K10

parser.add_argument()用法——命令行选项、参数和子命令解析器

通过在程序定义好我们需要参数,然后 argparse 将会从 sys.argv 解析出这些参数。argparse 模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息。...通俗来讲就是: 命令行运行代码时直接给相应变量赋值,就不需要在改python具体代码了。...;此外,也可以继承 argparse.Action 自定义参数解析; nargs - 应该读取命令行参数个数,可以是具体数字,或者是?...help - 参数帮助信息,当指定为 argparse.SUPPRESS 时表示不显示该参数帮助信息. metavar - 在 usage 说明参数名称,对于必选参数默认就是参数名称,对于可选参数默认是全大写参数名称.... dest - 解析后参数名称,默认情况下,对于可选参数选取最长名称,划线转换为下划线. 3.3 解析参数——使用 parse_args() 解析添加参数 ArgumentParser 通过

1.5K20

python学习之argparse模块

'--'shortname,但程序变量名为定义参数名 '--'参数     参数别名: 只能是1个字符,区分大小写     add_argument("-shortname","--name",...help="params means"),但代码不能使用shortname dest: 参数在程序对应变量名称 add_argument("a",dest='code_name')     default...    调用脚本时必须输入值     参数输入顺序与程序定义顺序一致 '-'参数     可不输入    add_argument("-a")     类似有'--'shortname,但程序变量名为定义参数名...shortname     dest: 参数在程序对应变量名称 add_argument("a",dest='code_name')     default: 参数默认值     help: 参数作用解释...也正如上面所示,长参数名也是可选。其实,dest 参数也是可选。如果没有指定 dest 参数,将用命令行参数名来对 options 对象值进行存取。

1.3K20

python自学argparse模块

只有短参数情况下才是用短参数名字取值。当然也可以指定一个别的变量名。 和位置参数相反,选项参数默认是非必须。...指定选项参数变量名 就如上面讲,执行选项参数变量名 import argparse parser = argparse.ArgumentParser(description='解析命令行参数')...这里变量名是自己在dest里指定了 print(args) # 看看整个内容 选项参数-设为必须 使用required=True 后,这个选项就不再是可选了,而是必须输入 import argparse...选项参数-布尔值或固定值 上面使用可选参数时候,必须在后面给这个参数赋值。...-ccc # 和下面的那个一样 python test.py -c -c -c python test.py -a A python test.py -a A -a B 将输出转化为字典 上面的例子每次打印都是我们设置过对象

1.4K10

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

前言 在第一篇“初探 argparse文章,我们初步掌握了使用 argparse 四部曲,对它有了一个基本体感。但是它具体支持哪些类型参数?这些参数该如何配置?...它常常用于将多个参数所对应固定值都保存在同一个列表,相应需要 dest 入参来配合,以放在同一个列表,如: 不指定 dest 入参,则固定值保存在以参数名命名变量 >>> parser.add_argument...parser.parse_args(['--int', '--str']) Namespace(int=[], str=[]) 指定 dest 入参,则固定值保存在 dest 命名变量...参数是在几个值可选呢?还是可以给定值,等等。 下面,我们将逐一介绍不同类型参数。 可选参数 可选参数 顾名思义就是参数是可以加上,或不加上。...在下一篇文章,我们来继续深入了解 argparse 功能,如何修改参数前缀,如何定义参数组,如何定义嵌套解析器,如何编写自定义动作等,让我们拭目以待吧~ ?

66530

python: argparse库 & 命令行解析工具

;此外,也可以继承 argparse.Action 自定义参数解析; nargs - 应该读取命令行参数个数,可以是具体数字,或者是?...const - action 和 nargs 所需要常量值。 default - 不指定参数时默认值。 type - 命令行参数应该被转换成类型。...choices - 参数可允许一个容器。 required - 可选参数是否可以省略 (仅针对可选参数)。...help - 参数帮助信息,当指定为 argparse.SUPPRESS 时表示不显示该参数帮助信息. metavar - 在 usage 说明参数名称,对于必选参数默认就是参数名称,对于可选参数默认是全大写参数名称.... dest - 解析后参数名称,默认情况下,对于可选参数选取最长名称,划线转换为下划线.

67130

python包合集-argparse

两个“--”参数,例如:--name 他就相当于在程序,用来接收对对应指令值变量,例如我们在控制台上输入 python3 test.py -n hou。...其中 -n 就代表使用 -n 指令,然后将后面的 hou 值赋值给对应变量, -n 对应变量就是 --name 。...是可以复制,其对应值会将该指令对应值放在一个数组       1.1 先来演示:使用action,保存布尔类型指令值:store_true/store_false:保存布尔类型变量: #...="额外说明") # 添加一个接收参数 -n, 并且该参数还必须要接收2个值,会放在一个数组,其中nargs等于几,就表示要接受几个参数 parser.add_argument("-n", "--name...("args = {}".format(args))     演示结果:     4、choices:如有choices选项,则该指令值只能是choices一个     代码演示 # 导入 argparse

37110

Python 模块:argparse

formatter_class - 用于自定义帮助文档输出格式类 prefix_chars - 可选参数前缀字符集合(默认值:'-') fromfile_prefix_chars - 当需要从文件读取其他参数时...nargs 命名参数关联不同数目的命令行参数到单一动作。支持值有: N (一个整数)。命令行 N 个参数会被聚集到一个列表。...一个更普遍用法是允许可选输入或输出文件: >>> parser = argparse.ArgumentParser() >>> parser.add_argument('infile', nargs...所有当前命令行参数被聚集到一个列表。注意通过 nargs='*' 来实现多个位置参数通常没有意义,但是多个选项是可能。...在最简单情况下,可选项和其值作为两个不同参数传递进去: >>> parser = argparse.ArgumentParser(prog='PROG') >>> parser.add_argument

2.4K10

python argparse处理命令行参数

对于脚本编程而言,经常需要从命令行传递参数到脚本。对于命令行参数定义和使用,有一套完整规则,以linux上ls命令为例 ls --help Usage: ls [OPTION]......从输出内容可以看到,命令行参数可以分为两大类 可选参数 位置参数 option表示可选参数,有两种写法,一种是一个短横杠后面加选项名称,称之为短选项,另外一种是两个短横杠后面加选项名称,称之长选项。...位置参数是必须提供,前面不需要短横杠修饰,直接就是参数名称,ls命令用法示意如下 ls -l dir 其中-l就是一个选项, dir则是一个位置参数, 要在python脚本实现这样命令行传参,...在该模块,关键是掌握add_argument方法使用,该方法有多个参数,列表如下 1. name 表示参数名称,选项可以同时提供短选项和长选项,也可以只提供其中一种,位置参数直接写参数名称即可...=None, type=None, choices=None, help=None, metavar=None) 通过多个参数组合,提供了强大命令行传参方式,尽管在python还有其他模块也提供了命令行参数处理功能

1.5K20

【测试开发】python系列教程:argparse 模块

'.format(epochs, batch)) 首先我们导入argparse这个包,然后包ArgumentParser类生成一个parser对象(其中description对参数解析器作用进行描述...注意:如果直接运行程序,默认不读取该变量,要使用必须要进行传参,例如:python try.py --epochs nargs: 应该读取命令行参数个数,可以是具体数字,或者是?...default: 不指定参数时该参数默认值。 type: 命令行参数应该被转换成数据类型。 required: 是否为必选参数或可选参数。 help: 参数帮助信息。...metavar:在 usage 说明参数名称,对于必选参数,默认就是参数名称,对于可选参数默认是全大写参数名称。...dest:解析后参数名称,默认情况下,对于可选参数选取最长名称,划线转换为下划线. choices:参数可允许一个容器。 const:action 和 nargs 所需要常量值。

14910

python3 argparse模块

(3)parser.add_argument() 向该对象添加你要关注命令行参数和选项 (4)parser.parse_args() 进行解析 4、argparse.ArgumentParser...'--ver', '-v', action = 'store_true', help = 'hahaha') # 将变量以标签-值字典形式存入args字典 args = parser.parse_args...() if args.ver: print("Ture") else: print("False") required - 必需参数,通常-f这样选项是可选,但是如果required...ver', '-v', required = True, type = int) choices - 设置参数范围,如果choice类型不是字符串,要指定type 表示该参数能接受值只能来自某几个值候选值...- 指定这个参数后面的value有多少个,默认为1 # 表示脚本可以读入两个整数赋予num键(此时值为2个整数数组) parser.add_argument('filename', nargs

83050

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

nargs关键字参数将不同数量命令行参数与一个操作关联起来。支持值是: N (an integer). 命令行N个参数将被收集到一个列表。...注意,对于可选参数,还有另外一种情况——出现了选项字符串,但后面没有命令行参数。在本例,将生成来自const值。...是允许可选输入和输出文件: >>> parser = argparse.ArgumentParser() >>> parser.add_argument('infile', nargs='?'...所有当前命令行参数都被收集到一个列表。注意,使用多个nargs='*'位置参数通常没有多大意义,但是使用nargs='*'多个可选参数是可能。...required通常,argparse模块假设-f和-bar等标志表示可选参数,这些参数在命令行总是可以省略。

6.8K20

python3argparse模块

() 创建一个解析对象(3)parser.add_argument() 向该对象添加你要关注命令行参数和选项(4)parser.parse_args() 进行解析 4、argparse.ArgumentParser...this is a description')parser.add_argument('--ver', '-v', action = 'store_true', help = 'hahaha')# 将变量以标签...jusage: demo1.py [-h] [--ver]demo1.py: error: unrecognized arguments: -j required - 必需参数,通常-f这样选项是可选...,如果choice类型不是字符串,要指定type表示该参数能接受值只能来自某几个值候选值,除此之外会报错,用choice参数即可parser.add_argument('file', choices...- 指定这个参数后面的value有多少个,默认为1# 表示脚本可以读入两个整数赋予num键(此时值为2个整数数组)parser.add_argument('filename', nargs

69610

python | argparse传递参数

这里介绍python包argparse 核心函数解析 ArgumentParser.add_argument(name or flags...[, action][, nargs][, const][,...用于标识参数参数,必须有,通常以-或–来表示 from argparse import ArgumentParser parse = ArgumentParser.add_argument('--s'...nargs nargs - The number of command-line arguments that should be consumed nargs=2 表示包含两个值参数列表 nargs...=’*’ 表示任意个参数 nargs=’+’ 表示至少一个参数 default 默认值 type 参数数值类型 choices 给定候选值 required 是否为必须给定参数...help 参数解释 dest 这个参数相当于把位置或者选项关联到一个特定名字 metavar 这个参数用于help信息输出 案例 第一步:定义函数 import os

1.9K60

Python3脚本编程常用.md

[TOC] 0x00 Python命令行参数 实现命令行参数输入得几种方法: sys模块argv getopt 模块 sys.argv #!...: 应该使用命令行参数数量(指定参数命令行之后输入参数个数) - nargs=2 指定参数后跟定输入参数个数 - nargs=argparse.REMAINDER 所有剩余命令行参数都被收集到一个列表...('w') 与nargs连用时候是允许可选输入和输出文件 - dest : 要添加到由parse_args()返回对象属性名称。...- 默认情况下,ArgumentParser对象使用destvalue作为每个对象“名称”。 - 默认情况下,对于位置参数操作,dest值直接使用,对于可选参数操作,dest值大写。...采用Argparse模块ArgumentParser方法进行实例化 positional arguments: 位置参数 infile outfile ['AAA', 'bbb']

98730
领券