قبل از اینکه بیشتر به برنامه نویسی پایتون بپردازیم ، با تابع 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”)
4 دیدگاه. ارسال دیدگاه جدید
خوب بود 😉😉😉😉👊👊👊👊
پس در پایتون 3 فلسفه وجوئ تابع main چیست؟؟
برای من هی hi payton میاره باید چیکار کنم
برای من هم میومد ولی وقتی که کدت از لحاظ جایگذاری یا هر چیز دیگه ای ایراد داشته باشه این عبارت رو بهت نمایش میده. من خطاها رو درست کردم یه تیک سبز گوشه سمت راست بالا برام اومد و همین برنامه رو برام چاپ کرد.
نمیدونم نسخه ات چیه ولی مال من 2022.3.3 هست.
def main():
print(“Hello World”)
if __name__ == “__main__”:
main()
print(“gru99”)