Python Documentation
Concise, example-driven Python reference. Read the concept, see the code, then practice it in a Coddy journey.
Start a guided Python journeyالبداية
- ما هي بايثون؟مقدمة مبسّطة للغة بايثون: ما هي، وفيم تُستخدم، ولماذا يختارها الكثيرون كأول لغة برمجة يتعلمونها.
- تثبيت بايثوندليل عملي خطوة بخطوة لتثبيت بايثون على أي نظام تشغيل، مع التحقق من الإصدار ومعرفة متى لا تحتاج أصلاً إلى تثبيته على جهازك.
- تشغيل بايثونثلاث طرق لتشغيل أكواد بايثون: الصدفة التفاعلية، ملف .py من الترمينال، ومن داخل محرر مثل VS Code — مع توضيح متى تستخدم كل طريقة.
- بناء جملة بايثونتعرّف على القواعد الأساسية التي تهتمّ بها لغة بايثون: المسافة البادئة، الأسطر، النقطتان الرأسيتان، والفرق بين الأحرف الكبيرة والصغيرة، بأسلوب مبسّط وبدون تعقيد.
- التعليقاتطريقة كتابة التعليقات في بايثون: تعليق السطر الواحد بعلامة `#`، التعليقات متعددة الأسطر، وكذلك Docstrings لتوثيق الدوال والموديولات.
المتغيرات والبيانات
- المتغيراتتعرّف على طريقة عمل المتغيرات في لغة بايثون: الإسناد، قواعد التسمية، إعادة الإسناد، والطريقة الصحيحة للتفكير فيها حتى لا تقع في أخطاء شائعة.
- أنواع البياناتجولة عملية في أنواع البيانات المدمجة في بايثون: الأعداد والنصوص والقيم المنطقية و None والقوائم والصفوف والمجموعات والقواميس، مع أمثلة واضحة لكل نوع ومتى تستخدمه.
- السلاسل النصيةتعلّم التعامل مع النصوص في بايثون: إنشاء السلاسل، استخدام f-strings، التقطيع (slicing)، وأهم الدوال مثل split و join و replace و strip.
- f-stringsدليل عملي لسلاسل f-strings في بايثون: كيف تُدرج المتغيرات والتعبيرات داخل النص، وتُنسّق الأرقام والتواريخ، ومتى تلجأ لأساليب التنسيق القديمة.
- الأعداد والمنطقيةكيف تتعامل لغة بايثون مع الأعداد الصحيحة والعشرية والقيم المنطقية: العمليات الحسابية، تحويل الأنواع، والحالات الخاصة التي تُربك المبتدئين.
- print و inputتعرّف على طريقة عمل دالتَي print() و input() في بايثون، مع شرح المعاملات sep و end، وكيفية تحويل مدخلات المستخدم إلى أرقام.
التحكم في التدفق
- المعاملاتجولة شاملة على معاملات لغة بايثون: الحسابية، والمقارنة، والمنطقية، والإسناد، والعضوية، والهوية، مع أمثلة عملية على كل نوع.
- if / elif / elseشرح عملي للجمل الشرطية في بايثون: if و elif و else، والقيم الصادقة (truthy)، والشروط المتداخلة، والصيغة المختصرة للـ ternary.
- حلقة forتعرّف على طريقة عمل حلقة for في بايثون مع أمثلة عملية للتكرار على القوائم والنصوص والقواميس و range، واستخدام break و continue و enumerate.
- حلقة whileمتى تستخدم حلقة while بدلاً من for، كيف تتجنّب الحلقات اللانهائية، وأهم الأنماط الشائعة التي ستقابلها في الأكواد الحقيقية.
- دالة range()شرح عملي لدالة range() في بايثون: معاملات البداية والنهاية والخطوة، العد التنازلي بخطوة سالبة، ولماذا لا ترجع قائمة فعلية.
المجموعات
- القوائمجولة عملية على القوائم في بايثون، أكثر أنواع المجموعات استخدامًا: كيف تنشئها، تفهرسها، تقتطع منها، تضيف إليها، ترتبها، وتمرّ على عناصرها.
- Tuplesمتى تختار tuple بدلاً من list؟ نشرح الـ immutability، وطرق الـ unpacking، والـ named tuples، ومتى تكون الـ tuples هي الخيار الأنسب فعلاً.
- المجموعات Setsمتى تختار المجموعة set في بايثون؟ تعرّف على تفرّد العناصر، سرعة البحث بـ in، والعمليات الرياضية القوية: الاتحاد والتقاطع والفرق.
- القواميسالقاموس في بايثون هو هيكل البيانات الأهم للبحث بالمفتاح والقيمة، وستعتمد عليه في كل مشروع بمجرد تجاوزك لمرحلة المبتدئين.
- List Comprehensionالـ List Comprehension تخليك تبني قائمة جديدة في سطر واحد مقروء — تحويل، فلترة، أو الاثنين معًا — بدل نمط الحلقة والـ append التقليدي.
الدوال والبنية
- الدوالتعلّم كيف تُعرِّف الدوال في بايثون وتستخدمها: المعاملات، قيم الإرجاع، الوسائط الافتراضية، والوسائط المُسمّاة، مع عادات تسمية تُبقي الكود واضحًا ومقروءًا.
- args و kwargsتعرّف على الفرق بين `*args` و `**kwargs` في بايثون، ومتى تستخدم كلًا منهما، وكيف تُمرّر الوسائط بين الدوال بأسلوب نظيف واحترافي.
- lambdaما هي دالة `lambda` في بايثون، وأين تتألق فعلاً مع `sorted` و `map` و `filter`، ومتى يكون الأفضل أن تستخدم `def` بدلاً منها.
- الديكوريتورزتعرّف على مفهوم الـ Decorators في بايثون، كيف تكتب ديكوريتور خاص بك، وأهم الأنماط: التمرير بالوسائط، التكديس، واستخدام functools.wraps.
- Type Hintsتعرّف على تلميحات الأنواع في بايثون ومتى تستفيد منها، مع شرح طريقة توثيق المتغيرات ودوال الإدخال والإخراج وأنواع القوائم والقواميس وOptional.
- الوحدات والاستيرادكيف يعمل نظام الوحدات في بايثون: كتابة وحداتك الخاصة، استيرادها، وتثبيت الحزم الخارجية عبر pip.
- pip والمكتباتتعرّف على كيفية تثبيت وتحديث وحذف مكتبات بايثون باستخدام pip، مع شرح PyPI وملف requirements.txt ولماذا يجب تجنّب التثبيت العام.
- البيئات الافتراضيةتعرّف على البيئة الافتراضية في بايثون ولماذا يحتاجها كل مشروع حقيقي، وكيف تنشئها وتديرها باستخدام وحدة venv المدمجة.
- __main__ في بايثونما الذي يفعله السطر `if __name__ == '__main__'` فعليًا، ولماذا يظهر في كل سكربت بايثون جدي، وكيف تكتب ملفًا يعمل كسكربت ووحدة في نفس الوقت.
الفئات والكائنات
التكرار المتقدم
التعامل مع البيانات الحقيقية
- التعامل مع الملفاتتعلّم كيف تقرأ وتكتب الملفات في بايثون باستخدام `with open`، والفرق بين الوضع النصي والثنائي، مع واجهة `pathlib` الحديثة والأكثر أمانًا.
- JSONتعلّم كيف تتعامل مع JSON في بايثون باستخدام مكتبة json: تحليل النصوص، القراءة من الملفات، الطباعة المنسّقة، والتعامل مع الحالات الخاصة في البيانات الحقيقية.
- ملفات CSVتعرّف على كيفية قراءة وكتابة ملفات CSV في بايثون باستخدام وحدة csv و DictReader و DictWriter، مع التعامل مع الترويسات والاقتباس، ومتى تحتاج إلى pandas بدلًا منها.
- طلبات HTTPتعلّم كيف ترسل طلبات HTTP في بايثون باستخدام مكتبة requests: GET وPOST، ومعاملات الاستعلام، والترويسات، وإرسال JSON، والتعامل مع الأخطاء.
- datetimeجولة عملية في مكتبة datetime في بايثون: قراءة التواريخ وتنسيقها، العمليات الحسابية على الوقت، والتعامل مع المناطق الزمنية بدون تعقيد.
- التعابير النمطيةدليل عملي لاستخدام وحدة re في بايثون: البحث عن الأنماط، استخراج المجموعات، الاستبدال، وأهم الأنماط التي ستحتاجها فعلياً في مشاريعك.
الأخطاء وتصحيحها
- الاستثناءاتتعلّم كيف تتعامل مع الأخطاء في بايثون باستخدام try و except و else و finally، والتقاط استثناءات محددة مثل ValueError و KeyError، ومتى ترفع استثناءك الخاص بـ raise.
- أخطاء بايثون والتصحيحجولة سريعة في أشهر الأخطاء التي ستقابلك في بايثون مثل KeyError و ValueError و ModuleNotFoundError و EOFError، مع عادات تصحيح عملية تساعدك على حلها بسرعة.