Antes de conocer las bibliotecas de análisis de Python, debemos tener conocimientos previos sobre la interfaz de usuario de línea de comandos. Una interfaz de línea de comandos (CLI) proporciona una interfaz fácil de usar para los programas de línea de comandos, que es la más favorecida por los desarrolladores o programadores que prefieren la programación con teclado, en lugar de usar el mouse. Al construir interfaces de línea de comandos, el usuario puede interactuar a través de las consolas, shells o terminales de manera más eficiente.
Hay muchas bibliotecas de Python para crear aplicaciones de línea de comandos como Argparse , Docopt , Click , Client y muchas más. Ahora, háganos saber más sobre las bibliotecas de Python de uso frecuente: Argparse, Docopt y Click.
Argparse
Argparse es una interfaz de línea de comandos fácil de usar. El módulo argparse analiza los argumentos y opciones/indicadores de la línea de comandos.
Instalación:
Hay muchas formas de instalar el módulo argparse, la forma más fácil es usando pip
$ pip install argparse
Inicializar Argparse
import argparse parser=argparse.ArgumentParser(description="Program description")
Agregar argumentos posicionales/opcionales: Usando add_argument() podemos agregar parámetros posicionales/opcionales al analizador.
parser.add_argument(‘-parameterName’, ‘–opcionalName’, help=”mensaje”)
Aquí, -parameterName es una notación abreviada.
–opcionalName es el parámetro opcional.
-h –help supervisa la ayuda.
Uso de la línea de comandos
$ python [file].py [command] [options] name
Ejemplo:
Python3
# argparse_example.py import argparse if __name__=='__main__': #Initialize parser=argparse.ArgumentParser(description="Simple calculator") #Adding optional parameters parser.add_argument('-n1', '--num1', help="Number 1", type=float) parser.add_argument('-n2', '--num2', help="Number 2", type=float) parser.add_argument('-op', '--operation', help="operator", default="*") #Parsing the argument args=parser.parse_args() print(args) #Initialize result to None result =None #Simple calculator operations if args.operation == '+': result=args.num1+args.num2 if args.operation == '-': result=args.num1-args.num2 if args.operation == '/': result=args.num1/args.num2 if args.operation == '*': result=args.num1*args.num2 if args.operation == 'pow': result=pow(args.num1,args.num2) #Print the result print("Result = " ,result)
Producción:
Docopt
Docopt crea una interfaz de línea de comandos para la aplicación de línea de comandos, genera automáticamente un analizador para ella. La idea principal de docopt es describir la interfaz literalmente con texto, como en docstring .
Instalación:
Para instalar este módulo, escriba el siguiente comando en la terminal.
$pip install docopt
Se usa más comúnmente para mostrar los mensajes de ayuda y se invoca con la opción -h o -help. docopt le brinda un fuerte control sobre su página de ayuda y consiste en la palabra clave de uso , que no distingue entre mayúsculas y minúsculas , seguida del nombre del programa. Un patrón de uso simple es el siguiente:
Usage : my_program command --option
Ejemplo:
Python3
#docopt_example.py #usage pattern usage=''' Usage: docopt_example.py command --option <argument> docopt_example.py <argument> <repeating-argument> docopt_example.py --version Options: -h, --help Display help -o, --option Display options -l, --all List all -q, --quit exit --version Version 3.6.1 ''' #Initialization from docopt import docopt args=docopt(usage) print(args)
Producción:
Hacer clic
Click es un kit de creación de interfaz de línea de comandos, ayuda en el anidamiento arbitrario de comandos, la generación automática de páginas de ayuda, admite la carga diferida de subcomandos en tiempo de ejecución. Su objetivo es hacer que el proceso de escribir herramientas de línea de comandos sea rápido y divertido, al mismo tiempo que evita cualquier frustración causada por la incapacidad de implementar una API CLI prevista . Viene con ayudantes comunes útiles (obtención de dimensiones de terminal, colores ANSI, obtención de entrada de teclado directa, limpieza de pantalla, búsqueda de rutas de configuración, lanzamiento de aplicaciones y editores, etc.)
Instalación:
Para instalar este módulo, escriba el siguiente comando en la terminal.
$pip install click
Ejemplo:
Python3
# click_example.py import click # initialize result to 0 result=0 @click.command() @click.option('--num1', default=1, help='Enter a float value', type=float) @click.option('--num2', default=1, help='Enter a float value', type=float) @click.option('--op', default='+', help='Enter the operator') # Calculator function def calculator(num1,num2,op): if op=='+': result=num1+num2 if op=='*': result=num1*num2 if op=='-': result=num1-num2 if op=='/': result=num1/num2 # print the result click.echo("Result is %f" %result) if __name__ =='__main__': calculator()
Producción:
Conclusión
Después de ver las implementaciones de la biblioteca anterior, podemos concluir que:
- Argparse: es una biblioteca estándar (incluida con Python) y muy simple de usar debido al trabajo que ocurre detrás de escena. Por ejemplo, esta biblioteca puede diferenciar entre los argumentos y las opciones que se definen usando el método add_arguments() automáticamente.
- Docopt: esta biblioteca se utiliza para escribir documentación. Además, esta biblioteca se usa en varios idiomas, es decir, puede aprender esta biblioteca y usarla en varios idiomas.
- Haga clic: esta biblioteca proporciona la implementación del estilo decorador, que es muy útil ya que puede decorar la función que desea usar. Esto también hace que la lectura del código sea muy fácil.
Publicación traducida automáticamente
Artículo escrito por soniyanagaraj30 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA