Traitement des arguments de ligne de commande (docopt Python)

Bonjour J'ai essayé le [docopt] de Python (http://docopt.org/) (traitement des arguments en ligne de commande) [^ 1].

Dans l'exemple ci-dessous, j'ai essayé la différence dans la description de --oo, `` `--pp et --qq. Dans le cas de `` `` --qq, le résultat est renvoyé sous forme de liste (cette description peut ne pas être officiellement recommandée).

$ ./docopt_test.py
{'--help': False,
 '--oo': None,
 '--pp': None,
 '--qq': [],
 'X': []}
$
$ ./docopt_test.py -o 0 -p 1 -q 2 3 4
{'--help': False,
 '--oo': '0',
 '--pp': '1',
 '--qq': ['2'],
 'X': ['3', '4']}
$

docopt_test.py


#!/usr/bin/env python3
# -*- coding: utf-8 -*-

def argsdocopt(doc):
    import docopt, textwrap
    return docopt.docopt(textwrap.dedent(doc))    

def main():
    """
    {f}: Test a docopt library.

    usage: {f} [-h] [-o O] [-p <P>|--pp <P>] [-q|--qq <Q>] [X...]
    
    options:
        -h, --help        show this help message and exit
        -o, --oo O        parameter O
        -p <P>, --pp <P>  parameter P
        -q, --qq <Q>      parameter Q
    """
    args = argsdocopt(main.__doc__.format(f=__file__))
    print(args)

if __name__ == '__main__':
    main()

[^ 1]: J'ai également fait référence à "Note d'utilisation de Python docopt".

Recommended Posts

Traitement des arguments de ligne de commande (docopt Python)
Spécifiez une sous-commande comme argument de ligne de commande en Python
Comment obtenir une chaîne à partir d'un argument de ligne de commande en python
Décomposer les arguments de commande en une seule ligne en Python
traitement d'image python
Traitement de fichiers Python
LINE heroku python
Modèle pour créer des applications de ligne de commande en Python
[Python] Comment tester l'analyseur de ligne de commande cliquez sur
Comment recevoir des arguments de ligne de commande en Python
Mes réflexions sur le modèle d'application de ligne de commande python2.6
[Introduction à Udemy Python3 + Application] 67. Arguments de ligne de commande
Traitement distribué Python Spartan
piège d'argument par défaut de python
série python2 / série 3, code de caractère et instruction d'impression / ligne de commande
Traitement de fichiers en Python
Note d'introduction à la ligne de commande
Python: traitement du langage naturel
Traitement de la communication par Python
Traitement multithread en python
Comportement des arguments par défaut de Python
Premier traitement d'image Python
Exécuter des commandes depuis Python
Résumé des arguments de la fonction Python
Traitement de texte avec Python
Traitement des requêtes en Python
Traitement d'image avec Python
Notes de commande de base Python
Raccourci de ligne de commande Linux
Exécuter la commande depuis Python
Illustration de traitement de chaîne Python
Comparaison des bibliothèques d'analyse de ligne de commande Python (argparse, click, fire)
Divers traitements de Python
Autoriser l'installation des outils de ligne de commande en Python
Utilisez Python 3 introduit par l'outil de ligne de commande sur macOS Catalina
"Laissez Python faire les choses ennuyeuses" Exercice ~ Command Line Mailer ~
[Python] Lire les arguments de ligne de commande à partir du nom de fichier ou de stdin
Traitement asynchrone avec LINE BOT: RQ (Redis Queue) en Python
Traitement d'image avec Python (partie 2)
100 coups de traitement du langage avec Python 2015
Traitement de texte UTF8 avec python
python3 Mesurez la vitesse de traitement.
"Traitement Apple" avec OpenCV3 + Python3
Fizzbuzz en Python (en une ligne)
[Python] Exécuter la commande unix (sous-processus)
Publier Twitter depuis la ligne de commande
Traitement du signal acoustique avec Python (2)
[Line / Python] Mémo d'implémentation Beacon
python> impression> N coupures> impression ('\ n' * 3)> 4 coupures> impression ('\ n' * 3),> 3 coupures
Exécuter des commandes externes avec python
Traitement du signal acoustique avec Python
Traitement asynchrone (threading) en python
100 Language Processing Knock Chapitre 1 (Python)
100 Language Processing Knock Chapitre 2 (Python)
Essayez LINE Notify avec Python
Traitement d'image avec Python (partie 1)
Exécutez la commande unix sur python
Traitement d'image avec Python (3)
Traitement d'image par python (Pillow)
Post-traitement de python (NG)