单击库如何在Python中使用

  介绍

本篇文章给大家分享的是有关单击库如何在Python中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

<强>点击

<强>点击是一个以尽可能少的代码,以组合的方式创建优美的命令行程序的Python包。它有很高的可配置性,同时也能开箱即用。

它旨在让编写命令行工具的过程既快速又有趣,还能防止由于无法实现预期的CLI API所产生挫败感。它有如下三个特点:

<李>

任意嵌套命令

<李>

自动生成帮助

<李>

支持运行时延迟加载子命令

<强>快速开始

<强> 3.1业务逻辑

首先定义业务逻辑,是不是感觉到有些难以置信呢?

不论是argparse还是docopt,业务逻辑都是被放在最后一步,但点击却是放在第一步。细想想点击的这种方式才更符合人的思维吧?不论用什么命令行框架,我们最终关心的就是实现业务逻辑,其它的能省则省。

我们以官方示例为例,来介绍点击的用法和哲学。假设命令行程序的输入是名字和计数,功能是打印指定次数的名字。

那么在你好。py中,很容易写出如下代码:

def 你好(统计,,名字):,   “““才能Simple  program  that  greets  NAME  for  a  total  of  COUNT 次!”““,   for 才能;x 范围(计数):拷贝,   ,,,click.echo (& # 39; Hello  % s ! & # 39;, %,名字)

这段代码的逻辑很简单,就是循环数次,使用点击。回声打印名字。其中,单击。回声和打印的作用相似,但功能更加强大,能处理好Unicode和二进制数据的情况。

<强> 3.2定义参数

很显然,我们需要针对计数和名字来定义它们所对应的参数信息。

<李>

数对应为命令行选项数,类型为数字,我们希望在不提供参数时,其默认值是1

<李>

名称对应为命令行选项,名称、类型为字符串,我们希望在不提供参数时,能给人提示

使用点击,就可以写成下面这样:

得到click  import  click    ,   @click.command (),   @click.option(& # 39;——数# 39;,,默认=1,帮助=& # 39;Number  of 问候# 39;公司),   @click.option(& # 39;——名字# 39;,,提示=& # 39;Your 名字# 39;,,   ,,,,,,帮助=& # 39;从而person 用问候# 39;公司),   def 你好(统计,,名字):,   ,,…

在上面的示例中:

<李>

使用装饰器的方式,即定义了参数,又将之与处理逻辑绑定,这真是优雅,和argparse docopt比起来,就少了一步绑定过程

<李>

使用click.command表示你好是对命令的处理

<李>

使用点击。选项来定义参数选项

<李>

对于——计数来说,使用默认来指定默认值。而由于默认值是数字,进而暗示——数选项的类型为数字

<李>

对于——名字来说,使用提示来指定未输入该选项时的提示语

<李>

使用帮助来指定帮助信息

不论是装饰器的方式,还是各种默认行为,点击都是像它的介绍所说的那样,让人尽可能少地编写代码,让整个过程变得快速而有趣。

<强> 3.3代码梳理

使用点击的方式非常简单,我们将上文的代码汇总下,以有一个更清晰的认识:

#, hello.py    import  click    ,   @click.command (),   @click.option(& # 39;——数# 39;,,默认=1,帮助=& # 39;Number  of 问候# 39;公司),   @click.option(& # 39;——名字# 39;,,提示=& # 39;Your 名字# 39;,,   ,,,,,,帮助=& # 39;从而person 用问候# 39;公司),   def 你好(统计,,名字):,   “““才能Simple  program  that  greets  NAME  for  a  total  of  COUNT 次!”““,   for 才能;x 范围(计数):拷贝,   ,,,click.echo (& # 39; Hello  % s ! & # 39;, %,名称),   ,   if  __name__ ==, & # 39; __main__ # 39;:,   你好才能()

若我们指定次数和名字:

,美元python3  hello.py ——count  2,——name  Eric    Hello 埃里克!,   Hello 埃里克!

若我们什么都不指定,则会提示输入名字,并默认输出一次:

,美元python3  hello.py    名称:Your  Eric    Hello 埃里克!

单击库如何在Python中使用