موضوعات داغ
  • بازی GTA VI
  • گلکسی S25 FE
  • گوشی‌های سری گلکسی S26
  • آیفون 17 اپل
  • بتلفیلد 6
  • دینو
سخت افزار مگ
  • اخبار و مقالات
    • گوشی موبایل
      • لوازم جانبی موبایل
    • تبلت
    • لپ تاپ
    • دسکتاپ
      • مادربرد
      • پردازنده مرکزی
      • کارت گرافیک
      • تجهیزات ذخیره سازی
      • حافظه
      • صفحه نمایش
      • تجهیزات جانبی
    • تصویرگری دیجیتال
    • صوتی و تصویری
    • شبکه
    • نرم افزار و بازی
    • کالبدشکافی قطعات
    • مطالب گوناگون
  • بررسی
    • بررسی گوشی موبایل
    • بررسی تبلت
    • بررسی لپ تاپ
    • دسکتاپ
      • بررسی کولر و فن
      • بررسی مادربرد
      • بررسی کارت گرافیک
      • بررسی تجهیزات ذخیره سازی
      • بررسی حافظه
      • بررسی منبع تغذیه و کیس
      • بررسی تجهیزات جانبی
      • بررسی صفحه نمایش
    • بررسی تصویرگری دیجیتال
    • بررسی صوتی و تصویری
    • بررسی شبکه
    • بررسی نرم افزار و بازی
    • بررسی گوناگون
  • راهنمای خرید
    • سیستم پیشنهادی
  • لیست قیمت
    • گوشی موبایل
      • لیست قیمت روز گوشی‌های سامسونگ
      • لیست قیمت روز گوشی‌های شیائومی
      • لیست قیمت روز گوشی‌های هواوی
      • لیست قیمت روز گوشی های آنر
    • تبلت
    • لپ‌تاپ
    • قطعات کامپیوتر
      • لیست قیمت پردازنده
    • محصولات اپل
    • تجهیزات شبکه
    • لوازم خانگی
    • صوتی و تصویری
    • دوربین دیجیتال
    • تجهیزات بازی
    • خودرو
  • ویژه
    • مسابقات
    • نمایشگاه
تبلیغات
تبلیغات
تبلیغات

مطالب گوناگون

آموزش برنامه نویسی پایتون (قسمت نهم: عبارت های بازگشتی)

Avatarتوسط محمد یوسفی زاده ·10 آبان 139722 اسفند 1398· 3

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

در پایتون، فراخوانی یک تابع توسط یک تابع دیگر امکان پذیر است. همچنین یک تابع حتی می تواد خودش را هم فراخوانی کند. شاید در نگاه اول چنین قابلیتی چندان کاربردی به نظر نرسد اما می توان آن را یکی از جادویی ترین ابزارهای پایتون دانست. برای مثال تابع زیر را در نظر بگیرید:

آموزش پایتون

این تابع نشان می دهد اگر ورودی n عددی منفی یا صفر بود عبارت Fire چاپ شد و در غیر این صورت تابع countdown که خودش است را فراخوانی کرده و مقدار n-1 را در آن قرار دهد. حالا فرض کنید n را برابر با 3 در نظر گرفته و برنامه را اجرا کنیم:

آموزش پایتون

آموزش پایتون

همان طور که مشاهده می کنید یک شمارشگر از 3 به سمت پایین حرکت می کند و پس از رسیدن به صفر عبارت fire چاپ می شود. اما می توان ترفندهای جالب تری هم به کار برد. این بار کد زیر را مشاهده کنید:

آموزش پایتون

در خط سوم دستوری به نام return وجود دارد که بلافاصله پس از if n <= 0 قرار دارد. این دستور باعث می شود در صورتی که همان ابتدا n کوچکتر یا برابر با صفر بود برنامه به وسیله return از تابع خارج شده و خطوط بعدی آن اجرا نشود.

اینجا مفهومی به نام عبارت های بازگشتی بی پایان تعریف می شوند. زمانی که برنامه هرگز به نقطه پایانی خود نرسد چنین اتفاقی رخ می دهد. البته افتادن در این حلقه بسته به معنی اجرای برنامه تا بینهایت نیست و معمولا در یک بازه زمانی مشخص یا تعدادی تکرار مشخص پیام خطایی مبنی بر رسیدن به حداکثر تعداد بازگشت ها نمایش داده شده و کار متوقف می شود.

 

ورود داده ها توسط صفحه کلید

اما معمولا در یک برنامه قصد دارید ورودی های مورد نظر کاربر را دریافت کرده و پس از اجرای تغییرات خروجی آنها را نمایش دهید. در پایتون 3 تابعی از پیش تعریف شده به اسم input وجود دارد که پس از فراخوانی، برنامه متوقف شده و منتظر ورود یک داده توسط کاربر باقی می ماند. زمانی که کاربر کلید enter را فشار دهد برنامه مجددا اجرا خواهد شد. در نسخه دوم پایتون این تابع raw_input نام داشت. همیشه قبل از استفاده از input بهتر است پیامی نمایش داده شود تا کاربر بداند برنامه منتظر چیست. خطوط کد زیر نحوه استفاده از input را نشان می دهند:

آموزش پایتون

نکته ای که در این برنامه وجود دارد در خط اول آن است. با کمی دقت متوجه خواهید شد که پس از عبارت ?what is your name و بدون بستن گیومه از n استفاده شده. این کار باعث می شود ورودی کاربر در یک خط پایین تر از آنچه توسط برنامه تایپ شده نوشته شده و ظاهر برنامه موجه و مرتب تر به نظر برسد.

دسترسی به همه بخش های آموزش برنامه نویسی پایتون

برچسب‌ها: آموزش, برنامه نویسی, پایتون

بدون امتیاز
کمی صبر کنید...
تبلیغات
تبلیغات
سرخط خبرها:
  1. عذرخواهی رئیس بانک مرکزی از مردم؛ بازطراحی معماری شبکه بانکی برای جلوگیری از حملات سایبری
  2. سامسونگ لپ‌ تاپ گلکسی بوک 6 مجهز به پردازنده‌های Core Series 3 اینتل را با قیمت پایه 799 دلار معرفی…
  3. پوکو از F9 پرو و F9 اولترا مجهز به تراشه اسنپدراگون 8 الیت نسل 5 رونمایی کرد
  4. کاهش 19 درصدی جرایم سایبری در 5 ماه اول سال 1403؛ تهران در صدر استان‌های پرخطر
  5. راهنمای خرید گلس گوشی، چرا برای صفحه نمایش گوشی باید محافظ بخریم؟

مطالب مرتبط ...

  • 1

    بهترین نرم افزار تبدیل فرمت های ویدیویی به یکدیگر

    Avatarتوسط محمد یوسفی زاده · 22 آبان 1396 · 22 آبان 1396

  • 1

    6 راه تمرین مغز برای آنکه باهوش تر شوید

    Avatarتوسط سیمین نوربخش · 5 آبان 1395 · 5 آبان 1395

  • چگونگی انتقال داده‌ها از آیفون به آیفون 8

    آموزش روش‌های انتقال اطلاعات از آیفون به آیفون

    Avatarتوسط غزاله هنرور · 28 اردیبهشت 1400 · 30 اردیبهشت 1400

مطالب گوناگون از دینو

کدام داروها می‌توانند تحمل گرما را سخت‌تر کنند؟

10 فیلم فوق‌ العاده که به شما کمک می کند بچه ها را بهتر درک کنید

چگونه از نشخوار افکار منفی و تجربیات گذشته خودداری کنیم؟

3 دیدگاه

  • دیدگاه3
  1. Avatar Angular js گفت:
    11 آبان 1397 در 9:18 ب.ظ

    ممنون از پاسخ شما.
    نکته بسیار ارزشمند این هست که سعی کردید جواب سوال من رو پیدا کنید.
    داره دیدم نسبت به این سایت عوض میشه :-bd
    به عنوان پیشنهاد شخصا نظرم این هست که هر چند مدت یکبار (بستگی به استقبال مخاطبان سایت) مطلبی رو با عنوان “پیشنهاد مطلب از سوی مخاطبان” در سایت قرار بدید و از مخاطبان سوال کنید که چه مطلبی رو درخواست دارند که در سایت ارائه بشه، بعد بر اساس پیشنهادات مخاطبان که بیشترین لایک رو خورده، مطلب رو تهیه کنید و در سایت قرار بدید. (حتی میتونید عنوان کنید که به پیشنهاد کدام مخاطب یا مخاطبین این مطلب تهیه شده)

    بجای استفاده از تیترهای زرد و جذاب سعی کنید با مخاطب تعامل کنید و نیاز مخاطب رو جویا بشید و سعی کنید به این نیاز پاسخ بدید. 😉

    پاسخ
  2. Avatar محمد یوسفی زاده گفت:
    10 آبان 1397 در 7:57 ب.ظ

    سلام. متاسفانه من درباره angular js اطلاعات چندانی ندارم. ولی فکر میکنم این لینک مشکل شما رو حل کنه:
    Angular from browser console ([url]”https://glebbahmutov.com/blog/angular-from-browser-console/”[/url])

    پاسخ
  3. Avatar Angular js گفت:
    10 آبان 1397 در 3:36 ب.ظ

    سلام
    یک سوال در مورد Angular js دارم لطفا راهنمایی کنید.
    اگه در یک صفحه وب از angular js استفاده شده باشه، چطوری میشه اون function که برای کلیک بر روی یک button تعریف شده رو از طریق console مرورگر اجرا کرد؟
    ممنون

    پاسخ

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

در صورتی که نظر شما حاوی ناسزا، عبارات توهین‌آمیز و تهدید بوده و در تضاد با قوانین فعلی کشور باشد از انتشار آن بدون حذف موارد ذکر شده، معذوریم.
شکلک‌ها (اموجی‌ها) را می‌توانید با کیبرد گوشی یا کیبرد مجازی ویندوز قرار دهید.
تصاویر نویسندگان دیدگاه از Gravatar گرفته می‌شود.

پربحث‌ترین‌ها

  • انویدیا فناوری DLSS 4.5 Ray Reconstruction را معرفی کرد؛ بهبود چشمگیر کیفیت تصویر بدون افت عملکرد 3

    انویدیا فناوری DLSS 4.5 Ray Reconstruction را معرفی کرد؛ بهبود چشمگیر کیفیت تصویر بدون افت عملکرد

  • ماهواره کوثر 2

    توسعه منظومه ماهواره‌ای «دونما» با نسل جدید کوثر؛ چرا تصاویر ماهواره هنوز به زمین نرسیده است؟

  • راک‌استار گیمز از تریلر گیم پلی بازی GTA VI رونمایی کرد 2

    راک‌استار گیمز از تریلر گیم پلی بازی GTA VI رونمایی کرد

  • تمام جزئیات مهمی که از نمایش جدید بازی GTA 6 در نتفلیکس فهمیدیم 2

    تمام جزئیات مهمی که از نمایش جدید بازی GTA 6 در نتفلیکس فهمیدیم

آخرین بررسی‌ها

9.4

بررسی پاور GREEN GP1650B-EDGE پرچم‌دار ۱۶۵۰ واتی

9.7

بررسی حافظه اس‌اس‌دی SAMSUNG 9100 PRO 2TB

9.3

بررسی مادربرد X870 AORUS STEALTH ICE گیگابایت

8.8

تماشا کنید: بررسی گوشی گلکسی A17 4G سامسونگ؛ اقتصادی تازه‌نفس

8.8

بررسی لپ تاپ MSI Vector 16 HX - اژدهای همه‌فن‌حریف

آخرین مطالب دینو

انقلاب‌های جهان: مهم‌ترین انقلاب‌های تاریخ که تاثیرات مهمی بر جهان داشتند!

کتاب‌های درسی تاریخ پر از صفحاتی است که انقلاب‌های…

  • حقایقی درباره پنتاگون که ممکن است شما را شگفت‌زده کند

  • 0 تا 100 اجرای روف گاردن در تهران | از طراحی اصولی تا نگهداری

  • 7 مورد از بهترین حرکات یوگا برای تسکین استرس

  • آزادی بیان چیست و چه اهمیتی در جامعه دارد؟

  • مطلب بعدی ویوو از گوشی Y93 به صورت رسمی رونمایی کرد
  • مطلب قبلی لنوو هم از گوشی کشویی خود با ادعای بیشترین نسبت نمایشگر به بدنه رونمایی کرد
  • آخرین مطالب
  • محبوب‌ترین مطالب
  • بازطراحی معماری شبکه بانکی کشور

    عذرخواهی رئیس بانک مرکزی از مردم؛ بازطراحی معماری شبکه بانکی برای جلوگیری از حملات سایبری

  • سامسونگ لپ‌ تاپ گلکسی بوک 6 مجهز به پردازنده‌های Core Series 3 اینتل را با قیمت پایه 799 دلار معرفی کرد

    سامسونگ لپ‌ تاپ گلکسی بوک 6 مجهز به پردازنده‌های Core Series 3 اینتل را با قیمت پایه 799 دلار معرفی کرد

  • پوکو از F9 پرو و F9 اولترا مجهز به تراشه اسنپدراگون 8 الیت نسل 5 رونمایی کرد

    پوکو از F9 پرو و F9 اولترا مجهز به تراشه اسنپدراگون 8 الیت نسل 5 رونمایی کرد

  • کاهش 19 درصدی جرایم سایبری در 5 ماه اول سال 1403

    کاهش 19 درصدی جرایم سایبری در 5 ماه اول سال 1403؛ تهران در صدر استان‌های پرخطر

  • راهنمای خرید گلس گوشی

    راهنمای خرید گلس گوشی، چرا برای صفحه نمایش گوشی باید محافظ بخریم؟

  • انویدیا فناوری DLSS 4.5 Ray Reconstruction را معرفی کرد؛ بهبود چشمگیر کیفیت تصویر بدون افت عملکرد 3

    انویدیا فناوری DLSS 4.5 Ray Reconstruction را معرفی کرد؛ بهبود چشمگیر کیفیت تصویر بدون افت عملکرد

  • نسل جدید کارت ملی 2

    نسل جدید کارت ملی در راه است؛ راه‌اندازی کیف هویت دیجیتال و تعیین تکلیف معوقات هویتی

  • راک‌استار گیمز از تریلر گیم پلی بازی GTA VI رونمایی کرد 2

    راک‌استار گیمز از تریلر گیم پلی بازی GTA VI رونمایی کرد

  • تمام جزئیات مهمی که از نمایش جدید بازی GTA 6 در نتفلیکس فهمیدیم 2

    تمام جزئیات مهمی که از نمایش جدید بازی GTA 6 در نتفلیکس فهمیدیم

  • ماهواره کوثر 2

    توسعه منظومه ماهواره‌ای «دونما» با نسل جدید کوثر؛ چرا تصاویر ماهواره هنوز به زمین نرسیده است؟

آخرین دیدگاه‌ها

  • Avatar
    tohid گفته است:
    اشتباه میکنید. فقط یکی از کاربرد های این ماهواره رو بهتون...
  • Avatar
    tohid گفته است:
    :))) آقا قدیمی های اینجا میدونن، پیشرفته ترین و بهترین حکومت...
  • Avatar
    امید گفته است:
    دوباره ی خرج بیخود دیگه بزارن رو دست مردم تو وض
  • Avatar
    رضا گفته است:
    حیف پولی که خرج این ات و اشغالا میشه و کوچکترین...
  • Avatar
    آرمین ابیشی گفته است:
    چرا آقا، نوشتم داخل وسایل همراهش، که فن مخصوص رمها است.
  • Avatar
    حسین گفته است:
    داداش dlss 5 رو هکر ها لیک کردند و خود انویدیا...
  • Avatar
    شایان گفته است:
    آقا من دیدم در یوتیپ پد حرارتی می زارند روی پردازنده...
  • Avatar
    امیرحسین گفته است:
    اون فن کوچیک داخل جعبه چیه؟ حتی توی اقلام داخل جعبه...
  • Avatar
    اذرگون گفته است:
    بعضی ها در مورد خطرات هوش مصنوعی گفتنند اینکه هوش مصنوعی...
  • Avatar
    نیما خردمند گفته است:
    اولد بهتره پس گزینه اول
راهنمای خرید لپ تاپ گیمینگ 471
راهنمای خرید و مشاوره هایلایت
راهنمای خرید لپ تاپ گیمینگ با بودجه های مختلف (دی 1404)
13 دی 1404
راهنمای خرید لپ تاپ با بودجه های مختلف 1,303
راهنمای خرید و مشاوره هایلایت
راهنمای خرید لپ تاپ با بودجه های مختلف (دی 1404)
10 دی 1404
راهنمای خرید مانیتور آذر 1404 70
راهنمای خرید و مشاوره
راهنمای خرید مانیتور با بهترین قیمت در بودجه‌های مختلف (دی 1404)
6 دی 1404
راهنمای خرید گوشی موبایل آذر 491
راهنمای خرید و مشاوره
راهنمای خرید گوشی موبایل بر اساس بودجه‌های مختلف (دی 1404)
5 دی 1404
7,767
راهنمای خرید و مشاوره سیستم پیشنهادی هایلایت
راهنمای خرید و مشاوره سیستم کامپیوتر با بودجه های مختلف (دی 1404)
3 دی 1404
راهنمای خرید و مشاوره هدفون و هدست با بودجه های مختلف (آبان 1404) 0
اخبار و مقالات راهنمای خرید و مشاوره هایلایت
راهنمای خرید و مشاوره هدفون و هدست با بودجه های مختلف (آبان 1404)
27 آبان 1404
  • سخت‌افزارمگ
  • درباره ما
  • تبلیغات
  • استخدام
سخت‌افزارمگ

© 2026 Sakhtafzarmag.Com. All Rights Reserved.

صفحه نخست » اخبار و مقالات » مطالب گوناگون » آموزش برنامه نویسی پایتون (قسمت نهم: عبارت های بازگشتی)

ورود

عضویت

رمزتان را گم کرده‌اید؟

عضویت | رمزتان را گم کرده‌اید؟
| بازگشت به ورود