Python Community RU - СНГ сообщество Python-разработчиков
Чат канала: @python_community_chat
Сотрудничество: @cyberJohnny и @Sergey_bzd
РКН реестр:
https://knd.gov.ru/license?id=67847dd98e552d6b54a511ed®istryType=bloggersPermission
Post #710
5.12K

⚡️ Что такое
Представим, что вы написали небольшой скрипт, который выводит hello world при запуске. А другой программист захотел импортировать ваш модуль, поскольку там была функция print_hello().
Но вместе с импортом он получил ненужную hello world в терминал. Почему так случилось? Потому что python-код также выполняется во время импорта. Чтобы этого избежать, используют
При импорте
#теория
__name__
Заглянув в большинство скриптов вы можете увидеть строку по типу __name__ == "__main__". Многие новички не понимают, зачем её добавлять, если и так всё работает. Представим, что вы написали небольшой скрипт, который выводит hello world при запуске. А другой программист захотел импортировать ваш модуль, поскольку там была функция print_hello().
Но вместе с импортом он получил ненужную hello world в терминал. Почему так случилось? Потому что python-код также выполняется во время импорта. Чтобы этого избежать, используют
__name__.При импорте
__name__ получает название модуля, а при прямом запуске (python3 script.py) его значение будет __main__. Подробнее вы, как обычно, можете почитать тут.#теория












