Вопрос

__author__="Sergio.Tapia"
__date__ ="$18-10-2010 12:03:29 PM$"

if __name__ == "__main__":
    print("Hello")
    print(__author__)

Где это становится __main__ а также __name__?

Спасибо за помощь

Это было полезно?

Решение

То __name__ Переменная производится доступным по времени выполнения. Это имя текущего модуля, имя, под которым он был импортирован. "__main__" это строка. Это не особенное, это просто строка. Это также происходит как имя главного сценария, когда он выполнен.

То if __name__ == "__main__": Механизм является распространенным способом чего-либо, когда файл .py выполнен непосредственно, но не при его импотеке в виде модуля.

Другие советы

Модули Python также могут работать как автономные сценарии. Как таковой, код в пределах if __name__ == "__main__": Блок будет запущен только в том случае, если модуль выполняется в качестве файла «Основной».

Пример:

#foo.py
def msg():
    print("bar")

if __name__ == "__main__":
    msg()

Запуск этого модуля будет выводиться

$ python foo.py
bar

Где в качестве импорта он ничего не выведет.

>>> import foo
>>> foo.msg()
bar

Ссылка

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top