۲۰ تمرین پایتون با جواب، از آسان به سخت
آموزش

۲۰ تمرین پایتون با جواب، از آسان به سخت

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

تحریریه‌ی دینا کد
نویسنده
۸ دقیقه مطالعه۱ بازدید
اشتراک گذاری۱
فهرست مطالب
  1. ۱چرا فقط دیدن آموزش کافی نیست؟
  2. ۲سه قاعده برای تمرین‌کردن درست
  3. ۳سطح اول، متغیر و محاسبه (تمرین‌های ۱ تا ۵)
  4. ۴سطح دوم، شرط و حلقه (تمرین‌های ۶ تا ۱۰)
  5. ۵سطح سوم، لیست و دیکشنری و تابع (تمرین‌های ۱۱ تا ۱۵)
  6. ۶سطح چهارم، پروژه‌های کوچک (تمرین‌های ۱۶ تا ۲۰)
  7. ۷سوال‌هایی که معمولاً می‌پرسند

تمرین پایتون یعنی حل مسئله‌های کوچک و مشخص با کدی که خودتان می‌نویسید و همان لحظه اجرا و نتیجه را می‌بینید. روش درستش هم ساده است: روزی نیم‌ساعت، در هر نوبت دو سه مسئله‌ی کوچک، و ترتیب از آسان به سخت تا وسط راه دلسرد نشوید. برای شروع لازم نیست پایتون نصب کنید؛ هر بیست تمرین این مطلب را می‌توانید در مرورگر بنویسید و اجرا کنید، حتی از گوشی.

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

چرا فقط دیدن آموزش کافی نیست؟

یک آزمایش کوچک: یک ویدئوی آموزشی تماشا کنید و بلافاصله بعد از آن، تمرین ۱ پایین را بنویسید. بیشتر تازه‌کارها دقیقاً همین‌جا می‌مانند و دستشان جلوی کیبورد می‌ایستد، چون «دیده‌بودن» با «توانستن» فرق دارد. قاعده‌ی رایج میان مدرس‌ها این است که برای هر ساعت آموزش، حدود دو ساعت تمرین لازم است.

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

سه قاعده برای تمرین‌کردن درست

قاعده‌ی پانزده دقیقه. قبل از دیدن جواب، پانزده دقیقه واقعی تلاش کنید. صورت مسئله را دوباره بخوانید، ورودی‌ها را عوض کنید، روی کاغذ بنویسید که برنامه باید قدم‌به‌قدم چه کند. اگر پانزده دقیقه بماند و جواب نیامد، جواب را ببینید، ویرایشگر را ببندید و همان تمرین را از حفظ دوباره بنویسید. یادگیری همان‌جاست که اتفاق می‌افتد.

خطاها را بخوانید. پیام‌های خطای پایتون صریح‌اند. IndentationError یعنی فاصله‌های اول خط‌ها را اشتباه داده‌اید، NameError یعنی متغیری را صدا زده‌اید که هنوز ساخته نشده. سه چهار خطای اول را که جدی بخوانید، برخورد با خطا برایتان استرس نمی‌ماند، سرنخ می‌شود.

کوچک شروع کنید. وسوسه‌ی «برو سراغ پروژه‌ی بزرگ» قاتل تازه‌کارهاست. ده تمرین حل‌شده‌ی کوچک بیشتر از یک پروژه‌ی بزرگِ نیمه‌تمام یاد می‌دهد، چون در تمرین کوچک حلقه‌ی نوشتن، اجرا و اصلاح را ده بار کامل می‌زنید.

سطح اول، متغیر و محاسبه (تمرین‌های ۱ تا ۵)

  1. اسم و سال تولدتان را در دو متغیر بریزید و جمله‌ای چاپ کنید که سن را حساب کرده باشد، مثل «در ۱۴۰۵ تو ۲۰ ساله می‌شوی».
  2. قیمت یک کالا (۲۴۵۰۰ تومان) و تعدادش (۳) را در متغیر بریزید و مبلغ کل را چاپ کنید.
  3. دمای ۷۸ درجه فارنهایت را به سلسیوس تبدیل کنید. فرمول (f - 32) * 5 / 9 را خودتان به کد تبدیل کنید.
  4. مقدار دو متغیر را بدون کمک متغیر سوم جابه‌جا کنید. راهنمایی: پایتون برای این کار یک خط دارد.
  5. یک جمله را در متغیر بگذارید و تعداد حروفش را با len چاپ کنید، بعد تعداد حروف بدون فاصله را حساب کنید.

جواب تمرین ۳:

pythonf = 78
c = (f - 32) * 5 / 9
print(c)          # 25.555555555555557

سطح دوم، شرط و حلقه (تمرین‌های ۶ تا ۱۰)

  1. بگویید یک عدد زوج است یا فرد. راهنمایی: باقیمانده‌ی تقسیم بر ۲ با %.
  2. بزرگ‌ترینِ سه عدد را پیدا کنید؛ اولین بار بدون تابع max حلش کنید.
  3. جدول ضرب ۷ را با یک حلقه‌ی for چاپ کنید، از ۷ تا ۷۰.
  4. جمع اعداد ۱ تا ۱۰۰ را با حلقه حساب کنید. جواب درست ۵۰۵۰ است؛ اگر ۵۰۴۹ یا ۵۰۵۱ شد، همان اختلاف یک‌واحدی را پیدا کنید، چون همین جور خطاهای کوچک در کدهای واقعی گران تمام می‌شوند.
  5. تعداد حرف «ا» در یک جمله را بشمارید.

جواب تمرین ۹:

pythontotal = 0
for i in range(1, 101):
    total = total + i
print(total)      # 5050

سطح سوم، لیست و دیکشنری و تابع (تمرین‌های ۱۱ تا ۱۵)

اینجا دیگر با داده‌های واقعی کار می‌کنید. اگر هنوز بین لیست و تاپل گیج هستید، مطلب تفاوت لیست و تاپل در پایتون را بخوانید و برگردید.

  1. میانگین نمرات [18.5, 12, 20, 16.75] را حساب کنید؛ یک بار با حلقه، یک بار با sum و len.
  2. بزرگ‌ترین عدد یک لیست را با حلقه پیدا کنید و این بار جایگاهش را هم برگردانید.
  3. تعداد تکرار هر کلمه‌ی یک جمله را با دیکشنری بشمارید.
  4. تابعی بنویسید که وزن (کیلوگرم) و قد (متر) بگیرد و شاخص توده‌ی بدنی را با دو رقم اعشار برگرداند.
  5. از لیست خرید، هر کالایی که گران‌تر از سقف ۵۰ هزار تومان است را در لیست جدیدی جدا کنید.

جواب تمرین ۱۳:

pythonjomle = "تمرین پایتون تمرین می‌خواهد"
shomaresh = {}
for kalame in jomle.split():
    shomaresh[kalame] = shomaresh.get(kalame, 0) + 1
print(shomaresh)  # {'تمرین': 2, 'پایتون': 1, 'می‌خواهد': 1}

سطح چهارم، پروژه‌های کوچک (تمرین‌های ۱۶ تا ۲۰)

اینجا از تمرین به پروژه می‌رسیم؛ هر کدام حدود یک شب کار است.

  1. بازی حدس عدد: برنامه یک عدد تصادفی بین ۱ تا ۵۰ نگه دارد و کاربر حدس بزند؛ برنامه بگوید بالاتر یا پایین‌تر و در پایان تعداد تلاش‌ها را نشان دهد.
  2. ماشین‌حساب چهار عمله، با این نکته که تقسیم بر صفر نباید برنامه را بترکاند.
  3. دفترچه‌ی تلفن با دیکشنری: اضافه‌کردن، جستجو و حذف شماره با منویی ساده که تا وقتی کاربر نگوید «خروج» تکرار شود.
  4. سنجش رمز عبور: کمتر از ۸ کاراکتر، یا بدون عدد، یا بدون علامت؛ هر کدام پیام خطای خودش را بدهد.
  5. پنج کلمه‌ی پرتکرار یک متن طولانی را پیدا کنید. این تمرین جمع همه‌ی سطح‌های قبل است؛ با همین منطق هسته‌ی ابزارهای تحلیل متن ساخته می‌شود.

سوال‌هایی که معمولاً می‌پرسند

این بیست تمرین چقدر طول می‌کشد؟ با روزی نیم‌ساعت، حدود دو هفته. عجله نکنید؛ کسی که روزی دو تمرین را خودش حل می‌کند، از کسی که ده تمرین را با نگاه‌کردن به جواب رونویسی کرده جلوتر است.

برای تمرین باید پایتون نصب کنم؟ نه. همه‌ی این تمرین‌ها را می‌شود همین‌جا در مرورگر زد؛ نصب پایتون و تنظیم ویرایشگر را برای وقتی بگذارید که می‌خواهید پروژه‌ی واقعی بسازید. صفحه‌ی تمرین پایتون آنلاین دیناکد ویرایشگر و دکمه‌ی اجرا دارد و از گوشی هم کار می‌کند.

اگر جواب را دیدم و فهمیدم کافی است؟ نه، و این مهم‌ترین سوال این لیست است. فهمیدن جواب درس را تمام نمی‌کند؛ همان تمرین را از حفظ دوباره بنویسید. اگر وسط راه گیر کردید یعنی هنوز یادش نگرفته‌اید، و بهتر است همین حالا بفهمید تا فردا.

این تمرین‌ها برای مصاحبه‌ی کاری کافی است؟ این بیست تا پایه‌ی زمین است. مصاحبه‌ها معمولاً سوال‌های الگوریتمی‌تری می‌پرسند که روی همین پایه سوار می‌شوند؛ اول این‌ها را روان حل کنید بعد سراغ سوال‌های مصاحبه بروید، وگرنه فقط پاسخ حفظی جمع می‌کنید.

اگر ترجیح می‌دهید همین مسیر تمرینی، تمرین‌به‌تمرین و با تصحیح خودکار جلو برود، دوره‌ی پایتون از صفر دیناکد دقیقاً همین ساختار را دارد: هر درس یک تمرین تعاملی در مرورگر است که همان لحظه اجرا و نمره می‌گیرد. از تمرین ۱ شروع کنید، همین امروز.

تحریریه‌ی دینا کد
نویسنده

نظرها

اولین نفری باشید که نظر می‌دهد
برای ثبت نظر وارد شوید

سؤالتان را بپرسید یا تجربه‌تان را بنویسید تا نویسنده‌ی مطلب پاسخ بدهد.

مطالب مرتبط

از همین دسته
diff در گیت چیست و چه‌وقت استفاده می‌شود؟
آموزش

diff در گیت چیست و چه‌وقت استفاده می‌شود؟

git diff دو نسخه از کدها را کنار هم می‌گذارد و خط‌به‌خط نشان می‌دهد چه چیزی عوض شده. یک نگاه به diff قبل از هر add و commit کافی است

تحریریه‌ی دینا کد۷ دقیقه
branch در گیت چیست و چه‌وقت بسازیمش؟
آموزش

branch در گیت چیست و چه‌وقت بسازیمش؟

branch یک اشاره‌گر متحرک به یکی از کامیت‌هاست، نه کپی پوشه‌ی پروژه. با git switch می‌سازی و جابه‌جا می‌شوی، با merge برمی‌گردانی و در پایان پاکش می‌کنی

تحریریه‌ی دینا کد۷ دقیقه
اینترفیس در TypeScript چیست و چه‌وقت به کار می‌آید؟
آموزش

اینترفیس در TypeScript چیست و چه‌وقت به کار می‌آید؟

اینترفیس قراردادِ شکلِ داده در TypeScript است؛ هر شیء‌ای که با آن جا می‌گیرد باید فیلدهای لازم را داشته باشد، وگرنه برنامه اصلاً کامپایل نمی‌شود

تحریریه‌ی دینا کد۴ دقیقه