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.
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