گامهای بعدی
در این درس پایانی مسیر طیشده را مرور میکنید، یادگیری را با پروژه تثبیت میکنید و برای ادامه با پکیجهای عمومی و مسیرهای تخصصی نقشه میریزید.
آنچه در این درس میآموزید
- مهارتهای آموختهشده در این دوره را در یک مرور جمعبندی کنید
- یک پروژه کوچک را با ترکیب ساختارها و توابع طراحی و اجرا کنید
- برای ادامه مسیر، ابزارهایی مثل پکیجهای عمومی و منابع رسمی را بشناسید
فهرست مطالب
این درس پایانی دوره است. تا اینجا از نخستین print تا ساختن کلاس پیش آمدهاید؛ و این فاصله همان فاصلهٔ «کد تایپشده از روی مثال» تا «نوشتن برنامه از صفر» است. در این درس مرور میکنید چه آموختید، یاد میگیرید دانش را با پروژه تثبیت کنید و برای ادامهٔ مسیر نقشهٔ روشنی میریزید.
آنچه در این دوره آموختید
مسیر را از ابتدا تا انتها مرور کنید:
- مبانی: متغیرها، انواع داده، عملگرها و ورودی و خروجی؛ زبان گفتگو با ماشین.
- کنترل جریان: شرطها برای تصمیم، حلقهها برای تکرار، توابع برای سازماندهی.
- ساختارهای داده: لیست و تاپل و دیکشنری و مجموعه، و ابزارهای پردازش رشته.
- سازماندهی و خطا: مدیریت استثنا، کار با فایل، ماژول و پکیج و کلاس.
هر برنامهای که در آینده بنویسید از همین قطعهها ساخته میشود؛ تفاوت فقط در بزرگی و ترکیب آنهاست.
یادگیری را با پروژه تثبیت کنید
مطالعه جای تمرین را نمیگیرد. کوچکترین پروژهای که چند مهارت را یکجا به کار میگیرد، تابعی است که روی داده آماری میسازد و نتیجه را در دیکشنری برمیگرداند:
def summarize(numbers):
return {
"count": len(numbers),
"sum": sum(numbers),
"max": max(numbers),
}
data = [12, 7, 3, 20]
print(summarize(data)){'count': 4, 'sum': 42, 'max': 20}
در این چند سطر، تابع و لیست و دیکشنری و توابع آماده با هم کار کردهاند. پروژههای پیشنهادی برای تثبیت:
- مدیر مخاطب: دیکشنری مخاطبها با افزودن، جستوجو و ذخیره در فایل.
- بازی حدس عدد: با
randomو حلقه while و مدیریت ورودی نامعتبر. - تحلیل متن: شمارش کلمهها با دیکشنری و گزارش پرتکرارترینها.
- کلاس حساب بانکی: برداشت و واریز با اعتبارسنجی و پیام خطای مناسب.
کتابخانهٔ استاندارد را کاوش کنید
پیش از نصب هر پکیجی، کتابخانهٔ استاندارد را بگردید؛ ماژول json نمونهٔ خوبی است که دادهٔ پایتونی را به متن قابل جابهجایی تبدیل میکند:
import json
user = {"name": "Sara", "scores": [18, 15]}
text = json.dumps(user, ensure_ascii=False)
print(text)
restored = json.loads(text)
print(restored["scores"][0]){"name": "Sara", "scores": [18, 15]} 18
dumps داده را به رشتهٔ JSON میبندد و loads برمیگرداند؛ با پارامتر ensure_ascii=False متن فارسی همانطور که هست نمایش داده میشود. ترکیب این ماژول با درس فایلها یعنی ذخیره و بازیابی ساختارهای داده در پروژههای واقعی.
پکیجهای عمومی و محیط مجازی
وقتی کتابخانهٔ استاندارد کافی نبود، مخزن عمومی PyPI پایتون صدها هزار پکیج آماده دارد؛ با ابزار pip نصب میشوند. پکیجهای هر پروژه را در محیط مجازی (Virtual Environment) جدا نگه میدارید تا پروژهها همدیگر را آلوده نکنند:
python -m venv .venv
.venv\Scripts\activate
pip install requestsدستور اول محیط میسازد، دستور دوم در ویندوز فعالش میکند (در لینوکس و مک source .venv/bin/activate) و دستور سوم پکیج را در همان محیط نصب میکند.
مسیرهای تخصصی
با پایهای که دارید، هر مسیری باز است:
- توسعه وب: ساخت سرویسها با فلسک یا جنگو.
- داده و هوش مصنوعی: تحلیل داده با پانداس و یادگیری ماشین.
- اتوماسیون: خودکار کردن کارهای تکراری روی فایل و وب.
- تست و ابزارسازی: نوشتن تست برای کد و ساختن ابزارهای خط فرمان.
منابع رسمی، قطبنمای شماست: راهنمای آموزش پایتون برای ادامهٔ مفاهیم، مرجع کتابخانهٔ استاندارد برای جزئیات هر ماژول، و PEP 8 برای سبک حرفهای نوشتن کد.
تمرینها
تمرین
تمرین ۱ — جمعبندی عملی
تابعی به نام average_score بنویسید که لیستی از دیکشنریهای دانشآموز بگیرد (هر دیکشنری کلیدهای name و score دارد) و میانگین نمرهها را برگرداند؛ سپس آن را روی دو دانشآموز با نمرههای ۱۸ و ۱۴ امتحان کنید.
# Write your code hereنمایش راهحل
def average_score(students):
total = 0
for student in students:
total += student["score"]
return total / len(students)
students = [
{"name": "Ali", "score": 18},
{"name": "Sara", "score": 14},
]
print(average_score(students))16.0
::: :::
خلاصه
- دوره با مبانی شروع شد و به کنترل جریان، ساختارهای داده، مدیریت خطا، فایل، ماژول و کلاس رسید.
- دانش برنامهنویسی با پروژه کوچکِ کامل تثبیت میشود، نه با خواندن فهرست بلند موضوعها.
- کتابخانهٔ استاندارد نخستین مقصد است؛ ماژول
jsonنمونهٔ قدرت آن است. - پکیجهای PyPI با
pipو در محیط مجازی نصب میشوند. - مسیرهای وب، داده، اتوماسیون و ابزارسازی همه از همین پایه آغاز میشوند.
دوره اینجا تمام میشود، اما یادگیری با نخستین پروژهٔ واقعی شما آغاز میشود؛ کوچک شروع کنید، مدام اجرا کنید و مستندات رسمی را همراه همیشگی نگه دارید.