l'utilisation de la fonction ne fonctionne pas avec getopt
J'ai un problème avec l'utilisation de la fonction en Python. C'est une partie de ma fonction principale:
def main(argv):
try:
opts, args = getopt.getopt(argv, 'hi:o:tbpms:', ['help', 'input=', 'output='])
if not opts:
print 'No options supplied'
usage()
except getopt.GetoptError,e:
print e
usage()
sys.exit(2)
for opt, arg in opts:
if opt in ('-h', '--help'):
usage()
sys.exit(2)
if __name__ =='__main__':
main(sys.argv[1:])
et je définissez une utilisation de la fonction ainsi
def usage():
print "\nThis is the usage function\n"
print 'Usage: '+sys.argv[0]+' -i <file1> [option]'
mais lorsque j'exécute mon code comme ./code.py
ou ./code.py -h
(il est exécutable), j'ai obtenu quelque chose, mais le Python.
Qu'entendez-vous par "quelque chose, mais le python"? Quel est exactement de la sortie dans chacune de ces situations? Ton code semble correct.
Vous allez avoir besoin de nous montrer plus de code. Je ne vois pas ce qui est le déclenchement de l'Python d'utilisation de la ligne de ce que vous avez collé.
J'ai couru votre script après le rendre exécutable et en ajoutant #! /usr/bin/python vers le haut du fichier. Il appelle l'utilisation de la fonction de l'amende juste.
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Vous allez avoir besoin de nous montrer plus de code. Je ne vois pas ce qui est le déclenchement de l'Python d'utilisation de la ligne de ce que vous avez collé.
J'ai couru votre script après le rendre exécutable et en ajoutant #! /usr/bin/python vers le haut du fichier. Il appelle l'utilisation de la fonction de l'amende juste.
OriginalL'auteur Alejandro | 2011-09-26
Vous devez vous connecter pour publier un commentaire.
Ci-dessous a fonctionné pour moi. Courir avec "python code.py".
Oui, c'est vrai. C'est ici, dans le cas où son véritable objectif était d'obtenir le code de travail. Si il est seulement intéressé par l'apprentissage pourquoi son code ne fonctionne pas, je suppose que ce n'est pas aussi utile.
merci pour votre aide, le retrait de la
-
deif opt in ('-h', '--help'):
semble fonctionner pour moi... MERCI+1 pour la réponse mais je ne comprends pas pourquoi vous avez "tbpms:" court opte. Ils ne sont pas utilisés n'importe où et n'ont aucun correspondant à longue opte à partir de ce que j'ai lu.
OriginalL'auteur BenH