


Detaillierte Einführung in die Verwendung von docopt, dem Analysetool für Befehlszeilenparameter in Python
docopt ist ein Tool zum Parsen von Befehlszeilenparametern. Wenn Sie Parameter an ein Python-Programm anhängen möchten, müssen Sie sich darüber keine Gedanken mehr machen. Der folgende Artikel stellt hauptsächlich die relevanten Informationen zu docopt vor, dem Befehlszeilenparameter-Parsing-Tool in Python. Freunde, die es benötigen, können einen Blick darauf werfen.
Vorwort
docopt ist eine Open-Source-Bibliothek. Es wurde ausführlich in der README-Datei vorgestellt und enthält auch viele Beispiele zum Lernen. Dieser Artikel übersetzt auch den Inhalt der README-Datei...
Das größte Merkmal von docopt ist, dass Sie es nicht haben Sie müssen sich keine Gedanken darüber machen, wie die Befehlszeilenparameter analysiert werden, aber wenn Sie das gewünschte Format gemäß bestimmten Regeln schreiben, ist die Analyse abgeschlossen.
docopt-Installation
docopt hat viele Versionen, von denen jede verschiedene Sprachen unterstützt, docopt unterstützt Java-Skripte. und docopts unterstützt Shell-Skripte (die folgenden Beispiele verwenden hauptsächlich docopts als Beispiel). Weitere Informationen finden Sie in den docopt-Anweisungen von Github als Beispiel für die Installation. Bevor Sie docopts installieren, müssen Sie zuerst docopt installieren.
Methode eins Die einfachere Methode ist die direkte Installation mit pip,
Einige Macs unterstützen den direkten pip-Befehl möglicherweise nicht. Sie müssen zuerst pip installierenMethode 2pip install docopt==0.6.2
Sie können den Quellcode auch auf Github herunterladen (docopt ist ein Open Quellprojekt) und verwenden Sie dann
python setup.py install
Eine einfache Analyse der Implementierung von docopt
Es gibt ein solches Attribut in Python , sein Wert ist eine Zeichenfolge, die im Allgemeinen Hilfeinformationen darstellt, und docopt nutzt dies aus. Ein Attribut ersetzt die Hilfeinformationen durch Anweisungen zum Parsen der Befehlszeilenparameter und analysiert sie dann. Nehmen wir zur Veranschaulichung ein Beispiel von docopt:
__doc__
Im obigen Codeausschnitt eine große Hilfe Informationen sind: Unsere Anweisungen zum Parsen von Befehlszeilenparametern rufen die Funktion docopt am Funktionseintrag zum Parsen auf. Die zurückgegebene Argumentvariable ist eine Lexikonvariable, die aufzeichnet, ob die Option ausgewählt ist, welchen Wert der Parameter hat und wann Das Programm startet über die Befehlszeile. Zur Laufzeit lernen wir die vom Benutzer eingegebenen Optionen und Parameterinformationen anhand der Datensätze der Argumentvariablen.
Das Schreiben von Anweisungen zum Parsen von Befehlszeilenparametern ist daher von entscheidender Bedeutung. Die Informationen zum Parsen von Befehlszeilen bestehen aus zwei Teilen, nämlich dem Format des Verwendungsmusters und dem Format der Optionsbeschreibung.
"""Naval Fate. Usage: naval_fate.py ship new <name>... naval_fate.py ship <name> move <x> <y> [--speed=<kn>] naval_fate.py ship shoot <x> <y> naval_fate.py mine (set|remove) <x> <y> [--moored | --drifting] naval_fate.py (-h | --help) naval_fate.py --version Options: -h --help Show this screen. --version Show version. --speed=<kn> Speed in knots [default: 10]. --moored Moored (anchored) mine. --drifting Drifting mine. """ from docopt import docopt if __name__ == '__main__': arguments = docopt(__doc__, version='Naval Fate 2.0') print(arguments)
Nutzungsmusterformat (Nutzungsmusterformat)
Das Verwendungsmuster beginnt mit der Verwendung: und endet mit einer Leerzeile, wie im gezeigt Das obige Code-Snippet beschreibt hauptsächlich das Format, in dem Benutzer Befehlszeilenparameter hinzufügen, dh das verwendete Format, und die Analyse erfolgt auch gemäß diesem Format. Jedes Verwendungsmuster enthält die folgenden Elemente:
* ParameterParameter sollten großgeschrieben oder in spitzen Klammern eingeschlossen werden .
* Optionen
Optionen beginnen mit einem Bindestrich – oder –. Das Format ist -o, wenn nur ein Buchstabe vorhanden ist, und --output, wenn mehr als ein Buchstabe vorhanden ist. Gleichzeitig können Sie auch mehrere Einzelbuchstabenoptionen kombinieren. -ovi entspricht -o, -v, -i. Optionen können auch Parameter haben. Vergessen Sie nicht, den Optionen zu diesem Zeitpunkt eine Beschreibung hinzuzufügen.
stellt optionale Elemente dar, die Elemente in eckigen Klammern sind optional
* ()
stellt die erforderlichen Elemente dar, die Elemente in Klammern Sie müssen eines haben, auch wenn Sie Wählen Sie eine von mehreren aus.
* |
Sich gegenseitig ausschließende Elemente, nur ein Element auf beiden Seiten der vertikalen Linie kann übrig bleiben
* ...
bedeutet, dass das Element wiederholt erscheinen kann und das endgültige Analyseergebnis eine Liste ist
* [Optionen]
Geben Sie bestimmte Optionen an eine bestimmte Aufgabe erledigen.
Optionsbeschreibungsformat
Optionsbeschreibung ist ebenfalls wichtig, insbesondere wenn die Option Parameter hat und sein muss Wenn ihr ein Standardwert zugewiesen wird . Es gibt zwei Formate zum Hinzufügen von Parametern zu Optionen:
Um eine Beschreibung für eine Option hinzuzufügen, verwenden Sie einfach zwei Leerzeichen, um die Option zu trennen und Beschreibung. Das ist es.
Wenn Sie einer Option einen Standardwert hinzufügen, fügen Sie ihn einfach nach der Auswahlbeschreibung hinzu. Das Format ist wie folgt [Standard:
-o FILE --output-FILE # 不使用逗号,使用 = 符号 -i <file>, --input <file> # 使用逗号,不使用 = 符号
Wenn die Option wiederholt werden kann, ist ihr Wert
eine Liste. Wenn sie nicht wiederholt werden kann, ist ihr Wert eine Zeichenfolge.--coefficient=K The K coefficient [default: 2.95] --output=FILE Output file [default: test.txt] --directory=DIR Some directory [default: ./]Verwenden Sie
[default: ...]
, um die Verwendung des Musterformats und des Optionsbeschreibungsformats zu verstehen, und Sie können es anhand der angegebenen Beispiele besser verstehen. Der nächste Schritt besteht darin, die Eingabeinformationen abzurufen. 在前面提到arguments参数是一个字典类型,包含了用户输入的选项和参数信息,还是上面的代码段例子,假如我们从命令行运行的输入是 那么打印arguments参数如下: 从打印信息可以看到,对于选项,使用布尔型来表示用户是否输入了该选项,对于参数,则使用具体值来表述。 这样一来,程序就可以从arguments变量中得到下一步的操作了。若是用户什么参数都没输入,则打印Usage说明提示输入内容。python3 test.py ship Guardian move 100 150 --speed=15
{'--drifting': False,
'--help': False,
'--moored': False,
'--speed': '15',
'--version': False,
'<name>': ['Guardian'],
'<x>': '100',
'<y>': '150',
'mine': False,
'move': True,
'new': False,
'remove': False,
'set': False,
'ship': True,
'shoot': False}
Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Verwendung von docopt, dem Analysetool für Befehlszeilenparameter in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Arraysinpython, besondersvianumpy, arecrucialInScientificComputingFortheirefficience undvertilität.1) Sie haben festgelegt, dass die Fornerikerne, Datenanalyse und Machinelarning.2) Numpy'SimplementationIncensuresFasteroperationsdanpythonlisten.3) Araysensableableableableableableableableableableableableableableableableableableableableableableableableableable

Sie können verschiedene Python -Versionen mithilfe von Pyenv, Venv und Anaconda verwalten. 1) Verwalten Sie PYENV, um mehrere Python -Versionen zu verwalten: Installieren Sie PyEnv, setzen Sie globale und lokale Versionen. 2) Verwenden Sie VenV, um eine virtuelle Umgebung zu erstellen, um Projektabhängigkeiten zu isolieren. 3) Verwenden Sie Anaconda, um Python -Versionen in Ihrem Datenwissenschaftsprojekt zu verwalten. 4) Halten Sie das System Python für Aufgaben auf Systemebene. Durch diese Tools und Strategien können Sie verschiedene Versionen von Python effektiv verwalten, um den reibungslosen Betrieb des Projekts zu gewährleisten.

NumpyarrayShaveseveraladVantagesOverStandardPythonArrays: 1) SiearemuchfasterDuetoc-basiert, 2) sie istaremoremory-effizient, insbesondere mit mit LaShlargedatasets und 3) sie können sich mit vektorisierten Funktionsformathematical und Statistical opertical opertical opertical operticaloperation, Making

Der Einfluss der Homogenität von Arrays auf die Leistung ist doppelt: 1) Homogenität ermöglicht es dem Compiler, den Speicherzugriff zu optimieren und die Leistung zu verbessern. 2) aber begrenzt die Typ -Vielfalt, was zu Ineffizienz führen kann. Kurz gesagt, die Auswahl der richtigen Datenstruktur ist entscheidend.

TocraftexecutablePythonScripts, folge theseBestPractices: 1) addashebangline (#!/Usr/bin/envpython3) tomakethescriptexcutable.2 SetPermissions withchmod xyour_script.py.3) organisation -bithacleardocstringanduseInname == "__ __": FormAcleardocstringanduseInname

NumpyarraysarebetterFornumericaloperations und multi-dimensionaldata, whilethearraymoduleiStableforbasic, an Gedächtniseffizienten

NumpyarraysarebetterforeheavynumericalComputing, während der projectwithsimpledatatypes.1) numpyarraysoferversatility und -PerformanceForlargedataSets und Compoxexoperations.2) thearraysoferversStility und Mächnory-Effefef

ctypesallowscreatingandmanipulationsc-stylearraysinpython.1) usectypestoInterfaceWithClibraryForperformance.2) createCec-stylearraysFornumericalComputationen.3) PassarrayStocfunctionsFectionFicecher-Operationen.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Dreamweaver Mac
Visuelle Webentwicklungstools

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.

Dreamweaver CS6
Visuelle Webentwicklungstools
