2010-10-19 35 views
0

un grand nombre d'applications .exe en ligne de commande que j'utilise vous permettent de marquer les entrées optionnelles par exemple. program.exe -o outputfile.txt -f F où "-o" indique un nom de fichier de sortie optionnel différent de celui par défaut, et où "-F" indique une autre option à propos du scriptpouvez-vous signaler les entrées de ligne de commande en python?

jusqu'à présent En utilisant les variables sys.arg [] pour entrer des noms de fichiers et de tels pour mes scripts python, mais cela doit être dans un ordre défini est-il possible d'avoir des entrées marquées dans les scripts python?

[tout cela se produit parce que J'ai accidentellement mis le nom de l'entrée et le nom de la sortie dans le mauvais ordre et j'ai écrasé mon fichier d'entrée]

Répondre

2

Vous pouvez utiliser les modules fournis par python pour gérer les arguments de ligne de commande.

Comment jamais cela ne supprimera pas la question de votre fichier par inadvertance écraser d'entrée. Pour cela, vous pourriez mettre un simple avertissement que si le fichier de sortie existe déjà, continuer à écraser votre fichier de sortie et attendre que l'entrée de l'utilisateur pour aller plus loin. De cette façon au moins vous pouvez donner une chance d'arrêter le traitement, si vous avez trouvé que le nom du fichier de sortie est incorrect.

Quelque chose comme ceci:

>>> var = raw_input('Please enter "Y" to proceed further:') 
Please enter "Y" to proceed further:Y 
>>> var 
'Y' 
>>>if var == 'Y': 
... sys.exit(0) 
... 
+0

merci, comment pourrais-je faire l'avertissement? – Kirt

+0

@Bec: Ajouté à ma réponse. – pyfunc