Понимание утверждения if name == “main” в Python
При работе с Python вы могли столкнуться с утверждением if name == ‘main‘: в конце скрипта или модуля. Оно служит важной цели в программировании на Python. В этой статье вы узнаете о важности этого утверждения и о том, почему оно часто используется в скриптах Python.
Что делает name == “main“?
Когда выполняется скрипт Python, интерпретатор устанавливает несколько специальных переменных, и одна из них – name. Значение name зависит от того, как выполняется скрипт.
- name устанавливается в ‘main‘, если скрипт выполняется как основная программа, то есть непосредственно интерпретатором Python.
- name устанавливается в имя модуля в том случае, если скрипт импортируется как модуль в другой скрипт.
Учитывая это поведение, вы можете отличить запуск скрипта как основной программы от запуска его как модуля при использовании выражения if name== “main“:.
Для чего он используется?
Модули Python можно повторно использовать в различных сценариях. Когда модуль импортируется, вы можете захотеть, чтобы определенный код в этом модуле выполнялся только при непосредственном выполнении модуля, а не при его импорте в другой скрипт.
Пример использования
# my_script.py
def main():
print("Hello, world!")
if __name__ == "__main__":
main()
В этом скрипте функция main() будет выполняться только при непосредственном запуске скрипта.
Заключение
Оператор if name == ‘main‘: – это мощная и универсальная функция Python, которая позволяет контролировать выполнение скрипта.