单击参数怎么在Python中使用

  介绍

这篇文章将为大家详细讲解有关点击参数怎么在Python中使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

<强>一、前言

在概念上,点击把命令行分为3个组成:参数,选项和命令。

参数就是跟在命令后的除选项外的内容,比如git添加一个。txt中的一个。txt就是表示文件路径的参数

选项就是以-或开头的参数,比如- f,——文件

命令就是命令行的初衷了,比如git就是命令,而git中添加的添加则是git的子命令

<强>二、参数

2.1基本参数

基本参数就是通过位置里指定参数值。

比如,我们可以指定两个位置参数x和y,先添加的x位于第一个位置,后加入的y位于第二个位置。那么在命令行中输入1 2的时候,分别对应到的就是x和y:

@click.command ()   @click.argument (& # 39; x # 39;)   @click.argument (& # 39; y # 39;)   def 你好(x, y):   打印才能(x, y)

<强> 2.2参数类型

参数类型就是将参数值作为什么类型去解析,默认情况下是字符串类型。我们可以通过类型入参来指定参数类型。

点击支持的参数类型多种多样:

<李>

str/点击。字符串表示字符串类型,这也是默认类型

<李>

int/点击。INT表示整型

<李>

/点击浮动。浮表示浮点型

<李>

bool/点击。BOOL表示布尔型。很棒之处在于,它会识别表示真/假的字符。对于1,是的,y和真正的会转化为真的,0,不,n和假会转化为假

<李>

点击。UUID表示UUID,会自动将参数转换为UUID。李UUID对象

<李>

点击。文件表示文件,会自动将参数转换为文件对象,并在命令行结束时自动关闭文件

<李>

点击。路径表示路径

<李>

点击。选择表示选择选项

<李>

点击。IntRange表示范围选项

同argparse一样,点击也支持自定义类型,需要编写点击。ParamType的子类,并重载转换方法。

<强> 2.3文件参数

在基本参数的基础上,通过指定参数类型,我们就能构建出各类参数。

文件参数是非常常用的一类参数,通过type=点击。文件指定,它能正确处理所有Python版本的unicode和字节,使得处理文件十分方便。

@click.command ()   @click.argument(& # 39;输入# 39;,,type=click.File (& # 39; rb # 39;)), #,指定文件为二进制读   @click.argument(& # 39;输出# 39;,,type=click.File (& # 39; wb # 39;)), #,指定文件为二进制写   def  inout(输入,输出):   while 才能正确的:   ,,,chunk =, input.read(1024), #,此时,input 为文件对象,每次读入,1024年,字节   ,,,if  not 块:   ,,,,,休息   ,,,output.write(块),#,此时,output 为文件对象,写入上步读入的内容

<强> 2.4文件路径参数

文件路径参数用来处理文件路径,可以对路径做是否存在等检查,通过type=点击。路径指定。不论文件名是unicode还是字节类型,获取到的参数类型都是unicode类型。

@click.command ()   @click.argument(& # 39;文件名# 39;,,type=click.Path(存在=True), #,要求给定路径存在,否则报的错   def 你好(文件名):   click.echo才能(click.format_filename(文件名))

如果文件名是以——开的头,会被误认为是命令行选项,这个时候需要在参数前加上——和空格,比如

,美元python  hello.py ——-foo.txt   -foo.txt

<强> 2.5选择项参数

选择项参数用来限定参数内容,通过type=点击。选择指定。

比如,指定文件读取方式限制为只读和读写:

@click.command ()   @click.argument(& # 39;模式# 39;,,type=click.Choice((& # 39;只读# 39;,,& # 39;读写# 39;)))   def 你好(模式):   click.echo才能(模式)

<强> 2.6可变参数

可变参数用来定义一个参数可以有多个值,且能通过娜戈来定义值的个数,取得的参数的变量类型为元组。

若娜戈=N, N为一个数字,则要求该参数提供N个值。若N为1则接受提供无数量限制的参数,如:

@click.command ()   @click.argument (& # 39; foo # 39;,,娜戈=1)   @click.argument(& # 39;酒吧# 39;,,娜戈=1)   def 你好(foo, bar):   通过才能

如果要实现argparse中要求参数数量为1个或多个的功能,则指定娜戈=1且需要=True即可:

单击参数怎么在Python中使用