Détails
Entrée utilisateur et arguments de ligne de commande
Comment puis-je avoir un script Python qui a) peut accepter l'entrée de l'utilisateur et comment puis-je faire en sorte qu'il b) lise les arguments s'il est exécuté à partir de la ligne de commande ?
502
3
Pour lire les entrées de l'utilisateur, vous pouvez essayer [le module
cmd
][1] pour créer facilement un mini interpréteur de ligne de commande (avec textes d'aide et autocomplétion) et [raw_input
][2] ([input
][3] pour Python 3+) pour lire une ligne de texte de l'utilisateur.Les entrées de la ligne de commande sont dans
sys.argv
. Essayez ceci dans votre script :Il y a deux modules pour analyser les options de la ligne de commande : [
optparse
][4] (déprécié depuis Python 2.7, utilisez plutôt [argparse
][5]) et [getopt
][6]. Si vous voulez simplement entrer des fichiers dans votre script, admirez la puissance de [fileinput
][7].La [référence de la bibliothèque Python][8] est votre amie.
[1] : https://docs.python.org/dev/library/cmd.html [2] : https://docs.python.org/2/library/functions.html#raw_input [3] : https://docs.python.org/dev/library/functions.html#input [4] : https://docs.python.org/dev/library/optparse.html [5] : https://docs.python.org/dev/library/argparse.html [6] : https://docs.python.org/dev/library/getopt.html [7] : https://docs.python.org/dev/library/fileinput.html [8] : https://docs.python.org/dev/library/
Ou pour Python 3 :
La meilleure façon de traiter les arguments de la ligne de commande est le module [
argparse
][1].Utilisez
raw_input()
pour obtenir l'entrée de l'utilisateur. Si vous importez le module [readline
][2], vos utilisateurs pourront éditer les lignes et avoir un historique.[1] : https://docs.python.org/library/argparse.html [2] : https://docs.python.org/library/readline.html