פייתון/פייתון גרסה 3/פונקצית main
פונקצית main מגדירה לפיתון אילו הרצאות ופונקציות להריץ תחילה.
תבנית
[עריכה]def main():
pass
if __name__ == "__main__":
main() #run main
הפונקצית Main
[עריכה]ניצור שני קבצים באותה תיקיה.
הראשון עם השם "first_file עם הכיתוב:
print(__name__)
השני עם השם "second_file עם הכיתוב:
import first_file
print('hello')
נריץ את שתי התכניות. התכנית הראשונה הדפיסה:
__main__
מפני שהקובץ הנוכחי אותו אנו מרצים מזוהה על ידי פיתון כקובץ ה-main, הקובץ הראשון שפיתון מריצה.
הקובץ השני ידפיס:
first_file
hello
כי הוא קובץ שמייבא את קובץ ה-"main" ולכן מריץ תחילה את הקובץ הראשון, first_file ואחר כך את יתר הפקודות.
הרצה יחידה של Main
[עריכה]אם נרצה שפיתון תריץ תכנית מסוימת ראשונה, אך לא נרצה כי תריץ מחדש, בקובץ המיבא את אותה תכנית, שוב רק מפני שהפנו אל קובץ זה, נוסיף את הפקודה:
if __name__ == "__main__":
main()
כלומר רק במידה והשם של הקובץ הנוכחי שווה הוא main תריץ את main, אחרת, הרץ את הקובץ.
נעדכן את התכנית:
הראשון עם השם "first_file בכיתוב:
def main():
print(__name__)
if __name__ == "__main__":
main() #run main
השני עם השם "second_file נותיר ללא שינוי.
הפעם כשנקרא אל הפונקציות נקבל אותה תוצאה לקובץ הראשון:
__main__
עבור הקובץ השני:
hello