Maison >développement back-end >Tutoriel Python >Introduction détaillée à l'utilisation de docopt, l'outil d'analyse des paramètres de ligne de commande en Python
docopt est un outil utilisé pour analyser les paramètres de ligne de commande. Lorsque vous souhaitez ajouter des paramètres à un programme Python, vous n'avez plus à vous en soucier. L'article suivant présente principalement les informations pertinentes de docopt, l'outil d'analyse des paramètres de ligne de commande en Python. L'introduction est très détaillée. Les amis qui en ont besoin peuvent y jeter un œil ci-dessous.
Préface
docopt est une bibliothèque open source. Il a été présenté en détail dans le README, et il est également accompagné de nombreux exemples d'apprentissage. Cet article traduit également le contenu du README...
La plus grande caractéristique de docopt est que vous n'avez pas. ne vous inquiétez pas de la façon d'analyser les paramètres de la ligne de commande, mais lorsque vous écrivez le format souhaité selon certaines règles, l'analyse est terminée.
installation de docopt
docopt a de nombreuses versions, chacune prenant en charge différents langages. Le docopt le plus simple prend en charge les scripts python, docopt prend en charge les scripts java. et docopts prend en charge les scripts shell (les exemples suivants utilisent principalement docopts comme exemple. Pour plus de détails, veuillez vous référer aux instructions docopt de github
Installation de docopt
Prenez Mac OS X). à titre d'exemple d'installation. Avant d'installer docopts, vous devez d'abord installer docopt. Il existe deux méthodes d'installation
Première méthode
La méthode la plus simple consiste à l'installer directement avec pip, pip install docopt==0.6.2
Certains Mac peuvent ne pas prendre en charge la commande pip directe. Vous devez d'abord installer pip
Méthode 2
Vous pouvez également télécharger le code source sur github (docopt est un open source). projet source), puis utilisez python setup.py install
Install
Install docopts
Pour installer docopts, vous devez utiliser la méthode deux ci-dessus pour installer docopt. Téléchargez le code source sur GitHub, puis utilisez. python pour l'installer. L'adresse de téléchargement est
Une analyse simple de l'implémentation de docopt
Il existe un tel attribut en Python __doc__
. Sa valeur est une chaîne, qui représente généralement les informations d'aide, et docopt en profite, remplace les informations d'aide par les instructions d'analyse des paramètres de ligne de commande, puis les analyse.
Prenons un exemple dans docopt pour illustrer :
"""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)
Dans l'extrait de code ci-dessus, une grande information d'aide is Nos instructions d'analyse des paramètres de ligne de commande appellent la fonction docopt à l'entrée de la fonction pour l'analyse. La variable d'arguments renvoyée est une variable lexique, qui enregistre si l'option est sélectionnée, quelle est la valeur du paramètre et d'autres informations lorsque le programme est exécuté. commence à partir de la ligne de commande Au moment de l'exécution, nous apprenons les options et les informations sur les paramètres saisies par l'utilisateur en fonction des enregistrements de la variable arguments.
Alors, comment écrire les instructions d'analyse des paramètres de ligne de commande devient crucial. Les informations d'analyse de la ligne de commande contiennent deux parties, à savoir le format du modèle d'utilisation et le format de description des options.
Format du modèle d'utilisation (Format du modèle d'utilisation)
Le modèle d'utilisation commence par usage : et se termine par une ligne vide, comme indiqué dans le extrait de code ci-dessus, il décrit principalement le format lorsque les utilisateurs ajoutent des paramètres de ligne de commande, c'est-à-dire le format lorsqu'il est utilisé, et l'analyse est également effectuée selon ce format.
Chaque modèle d'utilisation contient les éléments suivants :
* Paramètres
Les paramètres doivent être en majuscules ou placés entre crochets a8093152e673feb7aba1828c43532094.
* Options
Les options commencent par un tiret - ou -. Le format est -o lorsqu'il n'y a qu'une seule lettre et --output lorsqu'il y a plus d'une lettre. Dans le même temps, vous pouvez également combiner plusieurs options à une seule lettre. -ovi est équivalent à -o, -v, -i. Les options peuvent également avoir des paramètres. N'oubliez pas d'ajouter une description aux options à ce stade.
Voici la signification de certains identifiants utilisés dans le modèle d'utilisation. Leur utilisation correcte permet de mieux terminer la tâche d'analyse :
* []
représente les éléments facultatifs, les éléments entre crochets sont facultatifs
* ()
représente les éléments obligatoires, les éléments entre parenthèses Vous devez en avoir un, même si vous choisissez-en un parmi plusieurs.
* |
Éléments mutuellement exclusifs, un seul élément de part et d'autre de la ligne verticale peut rester
* ...
signifie que l'élément peut apparaître à plusieurs reprises et que le résultat final analysé est une liste
* [options]
Spécifiez des options spécifiques à accomplir une tâche spécifique.
Format de description de l'option
La description de l'option est également essentielle, surtout lorsque l'option a des paramètres et doit l'être Lorsqu'on lui attribue une valeur par défaut .
Il existe deux formats pour ajouter des paramètres aux options :
-o FILE --output-FILE # 不使用逗号,使用 = 符号 -i <file>, --input <file> # 使用逗号,不使用 = 符号
Pour ajouter une description pour une option, utilisez simplement deux espaces pour séparer l'option et la description. C'est tout.
Lors de l'ajout d'une valeur par défaut à une option, ajoutez-la simplement après la description de la sélection, le format est le suivant [par défaut : ea9061ab6564dcde7d357a3cddfdc513]
--coefficient=K The K coefficient [default: 2.95] --output=FILE Output file [default: test.txt] --directory=DIR Some directory [default: ./]
Si l'option peut être répétée, sa valeur [default: ...]
sera une liste. Si elle ne peut pas être répétée, sa valeur sera une chaîne.
Utilisez
pour comprendre l'utilisation du format de modèle et du format de description d'option. Vous pouvez mieux le comprendre avec les exemples donnés.
L'étape suivante consiste à obtenir les informations d'entrée.
在前面提到arguments参数是一个字典类型,包含了用户输入的选项和参数信息,还是上面的代码段例子,假如我们从命令行运行的输入是
python3 test.py ship Guardian move 100 150 --speed=15
那么打印arguments参数如下:
{'--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}
从打印信息可以看到,对于选项,使用布尔型来表示用户是否输入了该选项,对于参数,则使用具体值来表述。
这样一来,程序就可以从arguments变量中得到下一步的操作了。若是用户什么参数都没输入,则打印Usage说明提示输入内容。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!