كويزات · 8 دقيقة

اختبر مستواك في بايثون: تشخيص 8 أسئلة قبل أن تبدأ مسارًا

كويز مجاني يحدد إن كنت مبتدئًا أو متوسطًا في بايثون: أنواع، تحكم، دوال، وأخطاء. مع شرح لكل إجابة.

1 / 8 · أنواع الأرقام والقسمة

ما ناتج: print(type(3 / 2)) في بايثون 3؟

2 / 8 · القوائم

أي جملة تضيف عنصرًا في نهاية القائمة xs؟

3 / 8 · الملفات والتكرار

ماذا يحدث إن وصلت إلى نهاية ملف داخل حلقة for سطرًا سطرًا؟

4 / 8 · هياكل البيانات

ما الفرق الجوهري بين قائمة وقاموس؟

5 / 8 · الدوال والقيم الافتراضية

دالة تعرّف معاملًا افتراضيًا بقائمة فارغة [] — لماذا هذا خطأ شائع؟

6 / 8 · النطاق

ظهر الخطأ: NameError: name 'x' is not defined بعد دالة. السبب الأرجح؟

7 / 8 · إدارة الموارد

أي خيار يقرأ ملفًا ويغلقه حتى لو حدث خطأ؟

8 / 8 · جاهزية المشروع

متى تكون جاهزًا لمشروع صغير بدل درس جديد؟

بنك الشرح (للفهرسة والمراجعة)

1. ما ناتج: print(type(3 / 2)) في بايثون 3؟

الإجابة: <class 'float'>

في بايثون 3 العامل / يعطي float دائمًا. القسمة الصحيحة تستخدم //.

2. أي جملة تضيف عنصرًا في نهاية القائمة xs؟

الإجابة: xs.append(1)

القوائم تستخدم append. add للمجموعات (set)، وpush شائع في لغات أخرى.

3. ماذا يحدث إن وصلت إلى نهاية ملف داخل حلقة for سطرًا سطرًا؟

الإجابة: تنتهي الحلقة بشكل طبيعي

for يستهلك المكرر حتى ينتهي. StopIteration تُبتلع داخل الحلقة ولا تظهر كخطأ للمستخدم.

4. ما الفرق الجوهري بين قائمة وقاموس؟

الإجابة: القائمة بالفهرس الرقمي، القاموس بمفتاح

القائمة تسلسل مفهرس. القاموس ربط مفتاح→قيمة. يمكن تداخل الاثنين حسب الحاجة.

5. دالة تعرّف معاملًا افتراضيًا بقائمة فارغة [] — لماذا هذا خطأ شائع؟

الإجابة: الكائن الافتراضي يُنشأ مرة واحدة ويُشارك بين الاستدعاءات

القيم الافتراضية تُقيَّم عند تعريف الدالة لا عند كل استدعاء. استخدم None ثم أنشئ قائمة جديدة داخل الدالة.

6. ظهر الخطأ: NameError: name 'x' is not defined بعد دالة. السبب الأرجح؟

الإجابة: x محلي داخل الدالة ولم يُرجع أو يُعرَّف في النطاق الخارجي

ما يُسند داخل الدالة محلي ما لم يُصرَّح خلاف ذلك. ارجع القيمة أو عرّف x حيث تُستخدم.

7. أي خيار يقرأ ملفًا ويغلقه حتى لو حدث خطأ؟

الإجابة: with open(path) as f: data = f.read()

with يضمن إغلاق الملف عبر مدير السياق حتى عند الاستثناء.

8. متى تكون جاهزًا لمشروع صغير بدل درس جديد؟

الإجابة: عندما تكتب دوالًا، تقرأ خطأً، وتقسم مهمة إلى خطوات

المشروع يحتاج تقسيمًا ومعالجة خطأ لا مزيدًا من المشاهدة. إن نقص أحد الثلاثة فارجع لتمرين موجّه.

اختبر مستواك في بايثون: تشخيص 8 أسئلة قبل أن تبدأ مسارًا