Python Приклад основної функції та методу: зрозуміти def Main()

Що таке Python Основна функція?

Python основна функція є відправною точкою будь-якої програми. Коли програма виконується, інтерпретатор python виконує код послідовно. Основна функція виконується лише тоді, коли вона запускається як a Python програма. Він не запускатиме основну функцію, якщо її імпортовано як модуль.

У чому полягає функція def main(). Python? Щоб зрозуміти це, розглянемо наступний приклад коду

def main() Приклад 1

def main():
     print ("Hello World!")
print ("Guru99")

Python Основна функція

Тут ми маємо дві частини друку – одну визначено в основній функції, тобто «Hello World!» а інший незалежний, який називається «Guru99». Коли ви запускаєте функцію def main ():

  • Друкується лише «Guru99».
  • а не код «Hello World!»

Це тому, що ми не оголошували виклик функція “if__name__== “__main__”.

Важливо, щоб після визначення функції main ви викликали код if__name__== “__main__”, а потім запустили код, лише тоді ви отримаєте результат “hello world!” в консолі програмування. Розглянемо наступний код

def main() Приклад 2

def main():
    print("Hello World!")

if __name__ == "__main__":
    main()

print("Guru99")


У цьому випадку надруковано Guru99.

Python Основна функція

Ось пояснення,

  • Коли Python інтерпретатор читає вихідний файл, він виконає весь код, знайдений у ньому.
  • Коли Python запускає «вихідний файл» як основну програму, він встановлює спеціальну змінну (__name__) на значення («__main__»).
  • Коли ви виконуєте функцію 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__)

Змінна __name__ і Python Модулі

Тепер розглянемо, код імпортується як модуль

import MainFunction

print("done")

Змінна __name__ і Python Модулі

Ось пояснення коду:


Як C, Python використовує == для порівняння, а = для призначення. Python інтерпретатор використовує функцію main двома способами

прямий запуск:

  • __ім'я__=__основний__
  • if statement == True, і сценарій у _main_буде виконано

імпортувати як модуль

  • __name__= назва файлу модуля
  • if statement == false, і сценарій у __main__ не буде виконано

Коли код виконується, він перевіряє назву модуля за допомогою «якщо». Цей механізм гарантує, що основна функція виконується лише як прямий запуск, а не під час імпорту як модуля.

Наведені вище приклади 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")

Примітка: Переконайтеся, що після визначення функції main ви залишили деякий відступ і не оголошували код безпосередньо під функцією def main(): інакше це призведе до помилки відступу.

Щоденний інформаційний бюлетень Guru99

Розпочніть свій день з останніх та найважливіших новин про штучний інтелект, які ви можете знайти просто зараз.