آموزش کامل تابع Main پایتون با مثال (به زبان کاملا ساده)
قبل از اینکه بیشتر به برنامه نویسی پایتون بپردازیم ، با تابع Main (تابع اصلی) و اهمیت آن آشنا می شویم.
کد زیر را در نظر بگیرید:
def main():
print “hello world!”
print “Guru99”
در اینجا ما دو قطعه از چاپ را داریم که یکی در یک تابع اصلی تعریف شده است که “hello world” و دیگری مستقل است که “Guru99” را چاپ می کند. وقتی تابع ()main را اجرا می کنید :
- فقط “Guru99” چاپ می شود
- و از کد ” hello world” خبری نیست.
زیرا تابع فراخوانی”if__name __ ==” __main__ را اعلام نکردیم.
- هنگامی که مترجم پایتون یک سورس فایل را بخواند ، تمام کدهای موجود در آن را اجرا می کند.
- وقتی پایتون ” source file” را به عنوان برنامه اصلی اجرا می کند ، متغیر ویژه (__name__) را برای داشتن یک مقدار (“__main__”) تعیین می کند.
- هنگامی که شما تابع main را اجرا می کنید ، آنگاه عبارت “if” را می خواند و بررسی می کند که آیا __name__ برابر است با __main__ یا نه.
- در پایتون “if__name __ ==” __main__ به شما امکان می دهد فایل های پایتون را به صورت ماژول های قابل استفاده مجدد یا برنامه های مستقل اجرا کنید.
مانند C ، پایتون از == برای مقایسه while = for استفاده می کند. مترجم پایتون از دو روش تابع main را استفاده می کند
- import: نام فایل ماژول = __name__
false statement== if و اسکریپت در __main__ اجرا نمی شود
- اجرای مستقیم: __ main __ =__ name __
اگر true == statement if و اسکریپت در _main___ اجرا می شود
- بنابراین وقتی کد اجرا شد ، نام ماژول را با “if” بررسی می کند.
مهم است که بعد از تعریف تابع main (تابع اصلی)، کد را با if__name __ == “__main__” فراخوانی کنید و سپس آن را اجرا کنید ، فقط در این صورت خروجی “hello world” را در کنسول برنامه نویسی مطابق شکل زیر دریافت خواهید کرد.
توجه: اطمینان حاصل کنید که پس از تعریف تابع main ، تورفتگی ایجاد کرده و کد را درست در زیر def main() تعریف نمی کنید. در غیر این صورت خطای تورفتگی رخ می دهد.
def main():
print(“Hello World!”)
if __name__== “__main__”:
main()
print(“Guru99”)
در بالا نمونه کدهای پایتون ۳ هستند ، اگر می خواهید از پایتون ۲ استفاده کنید ، لطفا کد زیر را در نظر بگیرید
def main():
print “Hello World!”
if __name__== “__main__”:
main()
print “Guru99”
در پایتون ۳ ، نیازی به استفاده از if__name ندارید. کد زیر نیز کار می کند
def main():
print(“Hello World!”)
main()
print(“Guru99”)
خوب بود 😉😉😉😉👊👊👊👊
پاسخپس در پایتون 3 فلسفه وجوئ تابع main چیست؟؟
پاسخبرای من هی hi payton میاره باید چیکار کنم
پاسخبرای من هم میومد ولی وقتی که کدت از لحاظ جایگذاری یا هر چیز دیگه ای ایراد داشته باشه این عبارت رو بهت نمایش میده. من خطاها رو درست کردم یه تیک سبز گوشه سمت راست بالا برام اومد و همین برنامه رو برام چاپ کرد.
نمیدونم نسخه ات چیه ولی مال من 2022.3.3 هست.
def main():
print(Hello World)
if __name__ == __main__:
main()
print(gru99)