چرا با پایتون شروع کنیم
پایتون یک زبان برنامهنویسی رایگان است که تقریباً مثل انگلیسی ساده خوانده میشود. خبری از آکولادهای همهجا و نقطهویرگول در پایان هر خط نیست: تورفتگی (فاصله در ابتدای خط) است که کد را مرتب میکند. سایت رسمی حتی یک صفحه پایتون برای مبتدیان با منابع یادگیری دارد.
از پایتون هم برای بازیهای کوچک استفاده میشود، هم برای تحلیل داده و هم برای هوش مصنوعی؛ پس آنچه اینجا یاد میگیرید همچنان به کارتان میآید، چه در درس علوم دبیرستان، چه در سژپ و چه در پروژههای شخصیتان.
مرحله 1: Thonny را نصب کنید یا از یک ویرایشگر آنلاین استفاده کنید
دو راه دارید:
- روی کامپیوتر ویندوز، مک یا لینوکس: Thonny را نصب کنید، یک ویرایشگر رایگان که برای مبتدیان طراحی شده است. پایتون همراه آن نصب میشود، پس فقط به یک نصبکننده نیاز دارید. یک اشکالزدای گامبهگام هم دارد که هنگام اجرای برنامه مقدار متغیرهایتان را نشان میدهد و برای فهمیدن اتفاقاتی که میافتد عالی است.
- روی تبلت، Chromebook یا کامپیوتری که نمیتوانید چیزی رویش نصب کنید: از یک ویرایشگر آنلاین رایگان پایتون استفاده کنید. مطمئن شوید که از
input()پشتیبانی میکند (وگرنه مسابقه نمیتواند از شما سؤال بپرسد)، و از پدر یا مادرتان بپرسید که آیا ثبتنام در آن حداقل سن دارد یا نه.
در Thonny، کدتان را در بخش بزرگ بالای صفحه تایپ میکنید، آن را ذخیره میکنید (مثلاً با نام quiz.py) و برای اجرا روی دکمه مثلث سبز کلیک میکنید (یا F5 را میزنید). خروجی و سؤالها در پوسته (shell) پایین صفحه ظاهر میشوند.
مرحله 2: چهار ایدهای که لازم دارید
- متغیرها جعبههایی برچسبدار هستند.
score = 0جعبهای به نام score میسازد که عدد 0 در آن است. علامت=یعنی «این مقدار را در جعبه بگذار»، نه «مساوی است با». - input() یک سؤال نشان میدهد و منتظر میماند تا کاربر چیزی تایپ کند. دقت کنید: چیزی که برمیگردد همیشه متن است، حتی اگر کاربر یک عدد تایپ کند.
- if، elif، else به برنامه اجازه میدهند تصمیم بگیرد. برای مقایسه دو مقدار از
==(دو علامت مساوی) استفاده میکنید و خطهایی که به شرط وابستهاند با 4 فاصله تورفتگی دارند. - حلقهها دستورها را تکرار میکنند.
for number in range(1, 6):بلوک را 5 بار اجرا میکند و number به ترتیب 1، 2 و همینطور تا 5 میشود (6 حساب نمیشود). آموزش رسمی پایتون این ابزارها را بهطور کامل توضیح میدهد.
مرحله 3: برنامه کامل
این کد را دقیقاً همانطور که نوشته شده، با حفظ تورفتگیها، در Thonny یا ویرایشگر آنلاینتان کپی کنید. قبل از خواندن توضیحات، آن را اجرا کنید و یک دور بازی کنید.
import random
print("به مسابقه جدول ضرب خوش آمدید!")
name = input("اسم شما چیست؟ ")
score = 0
num_questions = 5
for number in range(1, num_questions + 1):
a = random.randint(2, 12)
b = random.randint(2, 12)
correct_answer = a * b
answer = input(f"سؤال {number}: {a} x {b} چند میشود؟ ")
if answer.strip() == str(correct_answer):
print("آفرین، درست است!")
score = score + 1
else:
print(f"اوه! جواب درست {correct_answer} بود.")
print(f"{name}، امتیاز نهایی شما {score} از {num_questions} است.")
if score == num_questions:
print("امتیاز کامل، آفرین!")
elif score >= 3:
print("کارتان عالی بود، ادامه دهید!")
else:
print("به تمرین ادامه دهید، بهتر میشوید!")مرحله 4: توضیح خط به خط
| خط | چه کاری انجام میدهد |
|---|---|
| 1 | import random ماژول random را بارگذاری میکند که اعداد تصادفی تولید میکند. |
| 3 | print() یک پیام خوشامد نمایش میدهد. |
| 4 | برنامه اسم شما را میپرسد و آن را در متغیر name ذخیره میکند. |
| 5 و 6 | امتیاز از 0 شروع میشود و تعداد سؤالها 5 تعیین میشود. برای مسابقه طولانیتر، این 5 را تغییر دهید. |
| 8 | حلقه خطهای تورفته زیر خودش را، برای هر سؤال یک بار، تکرار میکند. |
| 9 و 10 | random.randint(2, 12) یک عدد صحیح از 2 تا 12 انتخاب میکند که هر دو سر بازه را شامل میشود (مستندات ماژول random را ببینید). |
| 11 | جواب درست را حساب میکنیم. در پایتون، ضرب با * نوشته میشود. |
| 12 | متنی که با f شروع میشود یک f-string است: متغیرهای داخل آکولاد با مقدارشان جایگزین میشوند و چیزی مثل «7 x 8 چند میشود؟» به دست میآید. |
| 13 | چون input() متن برمیگرداند، جواب درست را پیش از مقایسه با str() به متن تبدیل میکنیم. .strip() هر فاصلهای را که اشتباهی قبل یا بعد از عدد تایپ شده حذف میکند. |
| 14 و 15 | اگر جواب درست باشد، به بازیکن تبریک میگوییم و 1 به امتیاز اضافه میکنیم. |
| 16 و 17 | در غیر این صورت (else)، جواب درست را نشان میدهیم تا بازیکن از اشتباهش یاد بگیرد. |
| 19 | بعد از حلقه (این خط دیگر تورفتگی ندارد)، امتیاز نهایی را چاپ میکنیم. |
| 20 تا 25 | سه پیام متفاوت بسته به امتیاز: کامل، 3 یا بیشتر (>= یعنی «بزرگتر یا مساوی»)، یا کمتر از 3. |
چرا از int(answer) برای تبدیل جواب به عدد استفاده نکنیم؟ آن هم کار میکند، اما اگر کسی یک حرف تایپ کند، برنامه با خطای ValueError متوقف میشود. مقایسه متن با متن از این مشکل جلوگیری میکند: یک حرف بهسادگی جواب غلط حساب میشود.
وقتی کار نمیکند: رایجترین خطاها
- IndentationError: یک تورفتگی جا افتاده یا همتراز نیست. همه خطهای داخل یک for یا یک if باید به یک اندازه تورفتگی داشته باشند.
- SyntaxError: اغلب به خاطر جا افتادن دونقطه در پایان خط for، if، elif یا else، یا گیومهای که هرگز بسته نشده است.
- NameError: نام متغیری که اشتباه نوشته شده است. از نظر پایتون، Score و score دو متغیر متفاوتاند.
- یک = تنها داخل if: برای مقایسه دو تا لازم است.
کل پیام خطا را بخوانید: شماره خطی را که مشکل در آن رخ داده به شما میگوید. اشکالزدای Thonny هم میتواند برنامهتان را خط به خط اجرا کند.
3 ایده برای ارتقای مسابقهتان
- سطح دشواری انتخاب کنید. در ابتدا با
input()بپرسید «آسان یا سخت؟». با یکifعدد 5 یا 12 را در متغیری به نام maximum ذخیره کنید، سپس بنویسیدrandom.randint(2, maximum). - زمانسنج اضافه کنید. ماژول time به شما اجازه میدهد اندازه بگیرید که هر دور چند ثانیه طول کشید:
import time start = time.time() # ... حلقه سؤالها ... elapsed = round(time.time() - start) print(f"زمان کل: {elapsed} ثانیه") - عملیات را مخلوط کنید. با
random.choice(["+", "-", "x"])، برنامه یک عملیات تصادفی انتخاب میکند. بعد به یکifنیاز دارید تا جواب درست را برای عملیاتی که انتخاب شده حساب کنید. چالش جایزهدار: چطور میتوانید از جوابهای منفی در تفریق جلوگیری کنید؟
قدم بعدی چیست؟
برنامهنویسی و ریاضی دست در دست هم پیش میروند: حلقهها، شرطها و اعداد تصادفی همهجا دیده میشوند، از احتمال در دبیرستان تا آمار در سژپ. برای پیشرفت بیشتر، نگاهی به دوره هوش مصنوعی ما بیندازید، و پیش از اینکه از یک چتبات بخواهید کدتان را برایتان بنویسد، راهنمای ما درباره مطالعه با هوش مصنوعی بدون تقلب را بخوانید.
اگر برای برنامهنویسی یا ریاضی کمک فردی میخواهید، Stellaire Académie تدریس خصوصی ارائه میدهد: یک جلسه رزرو کنید.
پرسشهای متداول
بچهها از چه سنی میتوانند یادگیری پایتون را شروع کنند؟+
بسیاری از نوجوانان حدود 12 سالگی شروع میکنند، وقتی در خواندن و تایپ کردن راحت هستند. کنجکاوی و حوصله برای رفع اشتباهها از سن مهمتر است.
آیا برای کدنویسی باید در ریاضی قوی بود؟+
نه، دستکم برای شروع لازم نیست. کدنویسی تفکر منطقی را تقویت میکند و این مسابقه نشان میدهد که یک پروژه ساده میتواند به تمرین جدول ضرب هم کمک کند.
Thonny یا ویرایشگر آنلاین: کدام را انتخاب کنم؟+
اگر میتوانید روی کامپیوترتان نرمافزار نصب کنید Thonny، چون بدون اینترنت کار میکند و اشکالزدایش به فهم کدتان کمک میکند. ویرایشگر آنلاین روی Chromebook یا در مدرسه به کار میآید.
کمک شخصی میخواهید؟ تماس اول رایگان است.
رزرو تماس رایگان