Befehlszeilenargumentverarbeitung (Python docopt)

Hallo Ich habe Pythons docopt (Befehlszeilenargumentverarbeitung) [^ 1] ausprobiert.

Im folgenden Beispiel habe ich den Unterschied in der Beschreibung von --oo```, --pp und` `--qq versucht. Im Fall von `` `--qq``` wird das Ergebnis als Liste zurückgegeben (diese Beschreibung wird möglicherweise nicht offiziell empfohlen).

$ ./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]: Ich habe auch auf "Python docopt usage memo" verwiesen.

Recommended Posts

Befehlszeilenargumentverarbeitung (Python docopt)
Geben Sie in Python einen Unterbefehl als Befehlszeilenargument an
So erhalten Sie eine Zeichenfolge aus einem Befehlszeilenargument in Python
Zerlegen Sie Befehlsargumente in einer Zeile in Python
Python-Bildverarbeitung
Python-Dateiverarbeitung
LINE Heroku Python
Vorlage zum Erstellen von Befehlszeilenanwendungen in Python
[Python] So testen Sie den Befehlszeilen-Parser-Klick
So empfangen Sie Befehlszeilenargumente in Python
Meine Gedanken zur Python2.6-Befehlszeilen-App-Vorlage
[Einführung in Udemy Python3 + Application] 67. Befehlszeilenargumente
Python verteilte Verarbeitung Spartan
Python-Standardargumentfalle
python2 series / 3 series, Zeichencode und print-Anweisung / Befehlszeile
Dateiverarbeitung in Python
Einleitende Anmerkung zur Befehlszeile
Python: Verarbeitung natürlicher Sprache
Kommunikationsverarbeitung durch Python
Multithread-Verarbeitung in Python
Python-Standardargumentverhalten
Erste Python-Bildverarbeitung
Führen Sie Befehle aus Python aus
Zusammenfassung der Python-Funktionsargumente
Textverarbeitung mit Python
Verarbeitung in Python beenden
Bildverarbeitung mit Python
Grundlegende Python-Befehlsnotizen
Linux-Befehlszeilenverknüpfung
Führen Sie den Befehl von Python aus
Abbildung zur Verarbeitung von Python-Zeichenfolgen
Vergleich der Python-Befehlszeilenanalysebibliotheken (argparse, click, fire)
Verschiedene Verarbeitung von Python
Ermöglichen Sie die Installation von in Python erstellten Befehlszeilentools
Verwenden Sie Python 3, das vom Befehlszeilentool unter macOS Catalina eingeführt wurde
"Lassen Sie Python die langweiligen Dinge tun" Übung ~ Befehlszeilen-Mailer ~
[Python] Befehlszeilenargumente aus Dateiname oder Standard lesen
Asynchrone Verarbeitung mit LINE BOT: RQ (Redis Queue) in Python
Bildverarbeitung mit Python (Teil 2)
100 Sprachverarbeitungsklopfen mit Python 2015
UTF8-Textverarbeitung mit Python
python3 Messen Sie die Verarbeitungsgeschwindigkeit.
"Apple-Verarbeitung" mit OpenCV3 + Python3
Fizzbuzz in Python (in einer Zeile)
[Python] Unix-Befehl ausführen (Unterprozess)
Poste Twitter über die Kommandozeile
Akustische Signalverarbeitung mit Python (2)
[Line / Python] Beacon-Implementierungsnotiz
Python> Drucken> N Pausen> Drucken ('\ n' * 3)> 4 Pausen> Drucken ('\ n' * 3),> 3 Pausen
Führen Sie externe Befehle mit Python aus
Asynchrone Verarbeitung (Threading) in Python
100 Sprachverarbeitung Knock Kapitel 1 (Python)
100 Sprachverarbeitung Knock Kapitel 2 (Python)
Versuchen Sie LINE Notify mit Python
Bildverarbeitung mit Python (Teil 1)
Führen Sie den Unix-Befehl auf Python aus
Bildverarbeitung mit Python (3)
Bildverarbeitung mit Python (Pillow)
Nachbearbeitung von Python (NG)