Je n'ai pas fait grand chose python - venant d'un arrière-plan C/Java - alors excusez-moi de poser une question aussi simple. J'utilise Pydev dans Eclipse pour écrire ce programme simple, et tout ce que je que je veux faire est d'exécuter ma fonction principale:
class Example():
if __name__ == '__main__':
Example().main() <----- What goes here?
def main(self):
print "Hello World!
C'est ce que j'ai maintenant. J'ai aussi essayé
self.main()
et
main()
et
main(self)
dont aucun ne fonctionne. Qu'est-ce que je rate?
Eh bien, tout d'abord, vous devez réellement définir une fonction avant de pouvoir l'exécuter (et elle n'a pas besoin d'être appelée main
). Par exemple:
class Example(object):
def run(self):
print "Hello, world!"
if __name__ == '__main__':
Example().run()
Cependant, vous n'avez pas besoin d'utiliser une classe - si tout ce que vous voulez faire est d'exécuter du code, placez-le simplement dans une fonction et appelez la fonction, ou mettez-le simplement dans le bloc if
:
def main():
print "Hello, world!"
if __name__ == '__main__':
main()
ou
if __name__ == '__main__':
print "Hello, world!"
Ce bloc entier est mal placé.
class Example(object):
def main(self):
print "Hello World!"
if __name__ == '__main__':
Example().main()
Mais vous ne devriez vraiment pas utiliser une classe juste pour exécuter votre code principal .