Основной вызов Python в классе
Я не делал много python - исходя из фона C/Java - так извините меня за задание такого простого вопроса. Я использую Pydev в Eclipse, чтобы написать эту простую программу, и все, что я хочу, это выполнить мою главную функцию:
class Example():
if __name__ == '__main__':
Example().main() <----- What goes here?
def main(self):
print "Hello World!
Это то, что у меня есть сейчас. Я также пробовал
self.main()
и
main()
и
main(self)
никто из них не работает. Что мне не хватает?
Ответы
Ответ 1
Ну, во-первых, вам нужно фактически определить функцию, прежде чем вы сможете ее запустить (и ее не нужно называть main
). Например:
class Example(object):
def run(self):
print "Hello, world!"
if __name__ == '__main__':
Example().run()
Вам не нужно использовать класс, хотя, если все, что вы хотите сделать, это запустить некоторый код, просто поместите его внутри функции и вызовите функцию или просто поместите ее в блок if
:
def main():
print "Hello, world!"
if __name__ == '__main__':
main()
или
if __name__ == '__main__':
print "Hello, world!"
Ответ 2
Весь блок неуместен.
class Example(object):
def main(self):
print "Hello World!"
if __name__ == '__main__':
Example().main()
Но вы действительно не должны использовать класс для запуска вашего основного кода.