دورة تفاعلية
دورة بايثون
تعلم لغة Python من الصفر، باللغة الإنجليزية، مع تجميع CPython إلى WebAssembly: يتم تشغيل التعليمات البرمجية الخاصة بك مباشرة في المتصفح.
01 · الوحدة 1 – أساسيات اللغة
الأساسيات: الإعلان عن المتغيرات، والتعرف على الأنواع، وإجراء العمليات الحسابية، واتخاذ القرارات، والطباعة على وحدة التحكم.
- 1.1المتغيرات والأنواعأعط اسمًا لقيمة، واكتشف النوع باستخدام type()، وتعرف على int / float / str / bool / لا شيء.~10 min
- 1.2مشغليالحساب (بما في ذلك // و **)، والمقارنة، والمنطق المنطقي مع و / أو / لا، والأسبقية.~10 min
- 1.3الشرط: إذا، أليف، وإلاتشغيل تعليمات برمجية مختلفة حسب الشرط؛ دور المسافة البادئة.~10 min
- 1.4الطباعة والسلاسل fprint() لإظهار القيم، وf-strings لإنشاء نص باستخدام الاستيفاء `{var}`.~8 min
02 · الوحدة 2 - التحكم في التدفق
التكرار والقفز والتعامل مع الأخطاء: التركيبات التي تجعل البرنامج يتفاعل مع البيانات والمشكلات.
- 2.1للحلقات والمدىقم بالتكرار عبر تسلسل باستخدام for، وقم بإنشاء نطاقات رقمية ذات نطاق (بدء، توقف، خطوة).~10 min
- 2.2بينما الحلقاتكرر بينما يبقى الشرط؛ متى تفضل أثناء الانتهاء.~8 min
- 2.3استراحة ومواصلة وغيرها في الحلقاتاخرج من الحلقة مبكرًا، وتخطى التكرار، واستخدم الخاصية لـ…else.~10 min
- 2.4معالجة الأخطاء: حاول/باستثناءاحصل على استثناءات محددة، وفصل بين المحاولة/الاستثناء/الآخر/وأخيرًا، وارفع الأخطاء مع الرفع.~12 min
03 · الوحدة 3 – هياكل البيانات
المجموعات الأربع المضمنة: القائمة (تسلسل قابل للتغيير)، الصف (تسلسل غير قابل للتغيير)، الإملاء (خريطة القيمة الرئيسية) والمجموعة (مجموعة من العناصر الفريدة).
- 3.1القوائمالإنشاء والوصول عن طريق الفهرس والشريحة والإضافة والإزالة والفرز. التسلسل الذي سوف تستخدمه أكثر من غيره.~12 min
- 3.2Tuples والتفريغالتسلسلات غير القابلة للتغيير، والتعبئة والتفريغ، والتبديل بدون متغير مؤقت، * للباقي.~10 min
- 3.3القواميسمفتاح ← خرائط القيمة، الوصول باستخدام [] و.get، التكرار عبر المفاتيح/القيم/العناصر، dict.setdefault.~12 min
- 3.4مجموعاتمجموعات من العناصر الفريدة، مجموعة العمليات (& | - ^)، اختبار عضوية O(1).~10 min
04 · الوحدة 4 - السلاسل والأرقام
العمل مع النص (الطرق، التقطيع) والأرقام (الرياضيات، تحويلات الكتابة) بشكل اصطلاحي.
- 4.1طرق السلسلةالطرق الأكثر استخدامًا: العلوي/السفلي، الشريط، الانقسام/الربط، الاستبدال، البدء/الانتهاء، البحث/الداخل.~12 min
- 4.2التقطيع والفهرسةالمؤشرات الموجبة والسالبة، الشريحة [البدء: الإيقاف: الخطوة]، عكس السلسلة، السلاسل الفرعية.~10 min
- 4.3الأرقام ووحدة الرياضياتint، float، true vs integer Division، % modulo، abs/round/min/max، math.sqrt، math.pi.~10 min
- 4.4نوع التحويلاتint(), float(), str(), bool(): الصب الصريح، تحليل المدخلات، صدق القيم.~10 min
05 · الوحدة 5 – الوظائف
حدد الوظائف باستخدام def وقيم الإرجاع وإدارة المعلمات الافتراضية و*args/**kwargs وlamda.
- 5.1مواطنه والعودةبناء الجملة، العودة (صريحة وضمنية لا شيء)، المعلمات الموضعية، docstring.~12 min
- 5.2المعلمات الافتراضية والكلمات الرئيسيةالقيم الافتراضية، والمكالمات باستخدام وسيطات الكلمات الرئيسية، وترتيب الموضع قبل الكلمة الرئيسية، والمخاطر الافتراضية القابلة للتغيير.~12 min
- 5.3* الحجج و ** kwargsوظائف الوسيطة المتغيرة: * تجمع الوسائط الموضعية، ** تقوم kwargs بجمع الكلمات الرئيسية. فك في موقع الاتصال.~12 min
- 5.4لامدا والوظائف ذات الترتيب الأعلىوظائف مجهولة مع لامدا، استخدم مع فرز/أقصى/دقيقة، عندما تفضل def، فرزها (...، مفتاح =...).~10 min
06 · الوحدة 6 - الفهم والتكرار
قم بإدراج/إملاء/تعيين الفهم وتعبيرات المولد والأدوات الأساسية لوحدة itertools.
- 6.1قائمة الفهمبناء الجملة [تعبير عن x في iter if cond]، التحويل، التصفية، المتداخلة.~12 min
- 6.2الإملاء وتعيين الفهمبناء الجملة {k: v for ...} و{x for ...} لبناء الإملاء والمجموعات بشكل تعريفي.~10 min
- 6.3تعبير المولدبناء الجملة (... لـ ... في ...)، التكرار البطيء، الذاكرة الثابتة، الجمع/أي/الكل على المولدات.~10 min
- 6.4أدوات itertools الأساسيةالوظائف الأكثر استخدامًا: التعداد، والرمز البريدي، والسلسلة، والعد، والتكرار، والمجموعات.~12 min
07 · الوحدة 7 - الفئات والوحدات
البرمجة كائنية التوجه في بايثون: الفئات، الميراث، الأساليب الخاصة (دوندر)، الاستيراد وتنظيم الوحدات.
- 7.1الطبقات والحالاتفئة، __init__، سمات وأساليب المثيل، الذات، فئة مقابل سمات المثيل.~14 min
- 7.2الميراثالفئات الفرعية، super()، تجاوز الطريقة، isinstance، MRO الأساسي.~12 min
- 7.3طرق خاصة (الدندر)__str__، __repr__، __eq__، __len__: ادمج كائناتك مع اللغة.~12 min
- 7.4الاستيراد والوحدات النمطيةاستيراد، من ... استيراد، الاسم المستعار باسم، تنظيم الوحدة، إذا كان __name__ == "__main__".~10 min
08 · الوحدة 8 - المكتبة القياسية الأساسية
وحدات المكتبة القياسية التي ستقابلها كل يوم: json، datetime، Collections، re.
- 8.1JSON: إجراء تسلسل وتحليلjson.dumps / json.loads، Python ↔ تعيين نوع JSON، المسافة البادئة، مفاتيح_الفرز، الافتراضي.~10 min
- 8.2التاريخ والوقت: التواريخ والأوقاتdatetime.now()، date/time/datetime/timedelta، التنسيق باستخدام strftime، والتحليل باستخدام strptime، والحساب.~12 min
- 8.3المجموعات: العداد والتقصيرعداد العد، الإملاء الافتراضي للإملاءات التي تتم تهيئتها تلقائيًا، ويُسمى Tuple كسجل خفيف الوزن.~12 min
- 8.4وحدة إعادة: regex في بيثونre.search / re.match / re.findall / re.sub، الأعلام، السلاسل الأولية r"..."، المجموعات المسماة.~12 min
09 · الوحدة 9 - بايثون الحديثة: الممارسة
ممارسات بايثون الحديثة: تلميحات الكتابة، وفئة البيانات، ومديري السياق، ومصممي الديكور. الكود الذي تكتبه في عام 2025.
- 9.1تلميحات الكتابة: أنواع التعليقات التوضيحيةالتعليقات التوضيحية على المعلمات والعودة، list[int] / dict[str, int], اختياري, Union, ملاحظة على mypy.~12 min
- 9.2فئة البيانات: فئات البيانات بدون قالب معياري@dataclass, field(default_factory=...),تجميد=صحيح، يعادل __init__/__repr__/__eq__.~12 min
- 9.3مدير السياق: مع و __أدخل__/__خروج__باستخدام open(...)، اكتب مدير السياق الخاص بك باستخدام __enter__/__exit__، contextlib.contextmanager.~12 min
- 9.4المزخرفون: الوظائف التي تعدل الوظائفوظائف ذات ترتيب أعلى، بناء جملة @decorator، functools.wraps، مثال @timeit.~14 min