Пример основной функции и метода Python:понимание функции def Main()
Что такое основная функция Python?
Основная функция Python является отправной точкой любой программы. Когда программа запускается, интерпретатор Python последовательно запускает код. Основная функция выполняется только тогда, когда она запускается как программа 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__»).
- Когда вы выполняете функцию main в python, она затем считывает оператор «if» и проверяет, действительно ли __name__ равно __main__.
- В 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")
Вот объяснение кода:
Как и C, Python использует ==для сравнения, а =для присваивания. Интерпретатор Python использует функцию main двумя способами
прямой запуск:
- __name__=__main__
- если оператор ==True, и скрипт в _main_будет выполнен
импортировать как модуль
- __name__=имя файла модуля
- если оператор ==false, и скрипт в __main__ не будет выполняться
Когда код будет выполнен, он проверит имя модуля с помощью «if». Этот механизм гарантирует, что основная функция выполняется только как прямой запуск, а не при импорте в виде модуля.
Вышеприведенные примеры представляют собой коды Python 3. Если вы хотите использовать Python 2, рассмотрите следующий код
def main(): print "Hello World!" if __name__== "__main__": main() print "Guru99"
В Python 3 вам не нужно использовать if__name. Следующий код также работает
def main(): print("Hello World!") main() print("Guru99")
Примечание. Убедитесь, что после определения функции main вы оставляете некоторый отступ и не объявляете код прямо под функцией def main():иначе она выдаст ошибку отступа.
Python
- Анонимная/лямбда-функция Python
- Генераторы Python
- Замыкания Python
- Декораторы Python
- Функция Python String strip() с ПРИМЕРОМ
- Длина строки Python | Пример метода len()
- Метод Python String find() с примерами
- Лямбда-функции Python с ПРИМЕРАМИ
- Функция Python round() с ПРИМЕРАМИ
- Функция Python map() с ПРИМЕРАМИ