main()

1. Что такое main()

  • В Python нет встроенной функции main, как в C/C++ или Java.

  • Но по соглашению разработчики создают функцию main(), которая выполняет основную логику скрипта.

  • Это помогает структурировать код и делать скрипт импортируемым как модуль, без автоматического запуска всего кода.


2. Стандартная конструкция

def main():
    print("Hello, World!")
    # основная логика программы

if __name__ == "__main__":
    main()

Объяснение

  • __name__ — встроенная переменная Python:

    • Если файл запускается как главный скрипт, __name__ == "__main__"

    • Если файл импортируется как модуль, __name__ будет равно имени файла

  • Таким образом, код внутри if __name__ == "__main__": выполняется только при прямом запуске.


3. Пример с функциями

Вывод при запуске скрипта:

Если модуль импортировать в другой файл, main() не будет вызван автоматически.


4. Применение в автотестах

  • Организация скриптов для запуска тестов вручную.

  • Структурирование утилит для тестов (логирование, генерация данных).

  • Позволяет повторно использовать функции в других тестах, без запуска всего скрипта.

  • Если импортировать create_test_user в другой модуль, main() не выполнится.


💡 Вывод:

  • main() — это соглашение для центральной точки запуска кода.

  • if __name__ == "__main__" позволяет разделять выполнение при запуске и импортирование.

Last updated

Was this helpful?