Python Пример основной функции и метода: понимание def Main()
Что такое Python Основная функция?
Python основная функция является отправной точкой любой программы. При запуске программы интерпретатор python последовательно выполняет код. Функция Main выполняется только тогда, когда она запущена как Python программа. Основная функция не будет запущена, если она импортирована как модуль.
Что такое функция def main() в Python? Чтобы понять это, рассмотрим следующий пример кода
def main() Пример 1
def main(): print ("Hello World!") print ("Guru99")
Здесь у нас есть две части вывода: одна определена в основной функции «Hello World!» а другой — независимый, «Guru99». Когда вы запускаете функцию def main():
- Распечатывается только «Guru99».
- а не код «Hello World!»
Это потому, что мы не объявили о вызове функция «if__name__== «__main__».
Важно, чтобы после определения основной функции вы вызывали код с помощью if__name__== «__main__», а затем запускали код, только тогда вы получите вывод «hello world!» в консоли программирования. Рассмотрим следующий код
def main() Пример 2
def main(): print("Hello World!") if __name__ == "__main__": main() print("Guru99")
В данном случае печатается Guru99.
Вот объяснение,
- После появления Python интерпретатор читает исходный файл, он выполнит весь найденный в нем код.
- После появления Python запускает «исходный файл» в качестве основной программы, он присваивает специальной переменной (__name__) значение («__main__»).
- Когда вы выполняете основную функцию в Python, она затем читает оператор «if» и проверяет, равно ли __name__ __main__.
- In Python «if__name__== «__main__» позволяет вам запустить Python файлы либо как повторно используемые модули или автономные программы.
Переменная __name__ и Python Модули
Чтобы понять важность переменной __name__ в Python Для метода основной функции рассмотрим следующий код:
def main(): print("hello world!") if __name__ == "__main__": main() print("Guru99") print("Value in built variable name is: ",__name__)
Теперь представьте, что код импортируется как модуль.
import MainFunction print("done")
Вот объяснение кода:
Как С, Python использует == для сравнения, а = для присваивания. Python интерпретатор использует функцию main двумя способами
прямой ход:
- __name__=__main__
- if оператор == True, и скрипт в _main_ будет выполнен
импортировать как модуль
- __name__= имя файла модуля
- if оператор == false, и скрипт в __main__ не будет выполнен
Когда код выполняется, он проверяет имя модуля с помощью «if». Этот механизм гарантирует, что основная функция выполняется только при прямом запуске, а не при импорте как модуль.
Выше приведены примеры Python 3 кода, если вы хотите использовать Python 2, пожалуйста, рассмотрите следующий код
def main(): print "Hello World!" if __name__== "__main__": main() print "Guru99"
In Python 3, вам не нужно использовать if__name. Следующий код также работает
def main(): print("Hello World!") main() print("Guru99")
Примечание: Убедитесь, что после определения основной функции вы оставляете некоторый отступ и не объявляете код сразу под функцией def main(): в противном случае будет выдана ошибка отступа.