تفاوت print و return در پایتون

یکی از سوال هایی که به وفور درباره مفاهیم زبان برنامه نویسی پایتون و برخی دیگر از زبان های برنامه نویسی پرسیده می شود ، این است که تفاوت return با print در چیست؟

تفاوت print با return در پایتون

اولین چیزی که بهتر است بدانید این است که return و print هر دو دستور یا Statement هستند. نه تابع یا Function . که البته این یک شباهت آن ها است. اما از لحاظ کارکرد باید دانست که دستور print تنها جهت نمایش یک string به کاربر استفاده می شود. از این رو معمولا آن چه را که برای انسان قابل فهم است توسط این دستور نمایش می دهیم. در نتیجه واضح است که کامپیوتر با بهتر است در این جا بگوییم کامپایلر ، نمی تواند از خروجی print در جایی استفاده نماید.

در مقابل دستور return ، یک خروجی قابل فهم توسط کامپیوتر را نمایش خواهد داد ( برمی گرداند ) این خروجی معمولا توسط Function ها ایجاد شده است. همچنین مقدار نمایش داده شده یا بازگردانده شده توسط دستور return اغلب از چشم کاربر دو خواهد ماند. اما از طرف دیگر در آینده توسط کامپیوتر و کامپایلر قابل استفاده است.

اما همین مسائل را می توانیم از زاویه دیگر نیز بازگو کنیم. دستور print و مقدار بازگشتی آن هیچ تاثیری بر روی Function ها در یک قطعه کد Python نمی گذارد. کاربرد print فقط در جهت به وجود آوردن مزایا برای کاربر و افزایش سازگاری با استاندارد های User Friendly نرم افزار استفاده می شود. البته این کاربر همیشه کاربر نهایی نیست. گاهی با استفاده از print مقادیری را نمایش خواهیم داد که برای آسان تر شدن فهم سایر اعضای تیم که بر روی همان قطعه کد کار می کنند مناسب خواهد بود و راهنمای آن ها است. دستور پرینت هیچ وقفه ای در کار نرم افزار ایجاد نمی کند.

دستور return اصلی ترین راه برای برگرداندن یک value در یک تابع یا Function است. تمام Function ها یک مقدار را برمی گرداند و اگر هیچ مقداری در تابع تعریف نشده باشد ، باز هم مقدار None برگردانده می شود. اما ذکر یک نکته در این جا ضروری ست و این همان نکته ای است که باعث گیج شدن مان می شود و احتمالا باعث شده است که این مقاله را بخوانید : این درست است که مقدارهایی که با دستور return بازگردانده می شوند قابل استفاده در توابع بعدی به عنوان argument هستند ، اما همچنان دلیل استفاده از return می تواند با دستور print یکسان باشد. ممکن است یک برنامه نویس پایتون از این دستور برای قابل فهم تر شدن قطعه کد برای سایر برنامه نویسان استفاده نماید و هیچ گاه از مقداری که return می نماید استفاده نکند. حتی این امکان وجود دارد که از return تنها برای بررسی درستی کارکرد Function بهره ببریم.

مثال تفاوت return با print

در پایان به قطعه کد زیر نگاهی بیاندازید و سعی کنید آن را تحلیل نمایید :

def function_that_prints():

    print “I printed”

def function_that_returns():

    return “I returned”

f1 = function_that_prints()

f2 = function_that_returns()

print “Now let us see what the values of f1 and f2 are”

print f1

print f2

print “TechTik.com :)”

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.