Точка входа



В некоторых языках программирования есть функции main(), с которых начинается выполнение программы. Но в Python весь код исполняется построчно.



Как вариант, многие пишут основную логику программы в обычную функцию main(), а вызывают ее только в условии if __name__ == '__main__'.



Переменная __name__— это специальная переменная, которая будет равна '__main__', только если файл запускается как основная программа. А при импорте в качестве модуля выставляется равной имени модуля.



Таким образом, программа корректно заработает, только если запустить ее напрямую. Если импортировать ее как модуль в другой скрипт, то условие не сработает.