2016-03-31 2 views
-2

Я новичок в python, и я только начал писать простые классы с помощью основного метода. Пожалуйста, найдите ниже несколько строк кода python. Я только что создал основной метод с заявлением на печатьPython класс и ошибка основного метода в python 2.6.6

def main(): 
     print("inside main method") 
    if __name__ == "__main__": 
     main() 

Когда я пишу выше без класса, он работает исправно без ошибок, но если я поместил один и тот же код внутри класса, я столкнулся с NamedError в python.

class Test: 
    def main(): 
     print("inside main method") 
if __name__ == "__main__": 
    main() 

Когда я бегу выше я получаю ниже ошибки NameError: название «главный» не определен.

Я использую Python 2.6.6 версии

+2

Если вы новичок, не начинайте с длинной надстрочной версии Python. Если вы хотите изучить Python2, используйте python 2.7.10 или около того, и если вы хотите изучить Python 3, используйте 3.4.2 или около того. –

+3

Когда вы помещаете 'main' внутри класса, он больше не доступен из глобальной области. – TigerhawkT3

+2

Кроме того, пожалуйста, не забудьте отформатировать код как код, а текст не как код, чтобы сделать ваш вопрос разборчивым –

ответ

0

Прежде всего, как не указано TigerhawkT3, когда вы кладете главный внутренний класс, он больше не доступен из глобальной области видимости. Так что если вы хотите, чтобы ваша основную часть класса вы должны определить его в следующем виде:

class Test: 
    def main(self): 
     print("inside main method") 

И чтобы быть в состоянии назвать его следует использовать следующее:

if __name__ == "__main__": 
    Test().main() 

I предложите прочитать следующий учебник: https://docs.python.org/2/tutorial/classes.html

Смежные вопросы