دورة تطوير بايثون المتقدمة
الفصل
>
المستوى
الفصول المتقدمة
تحميل المشغل للمقارنة
الهدف
تحقق وقم بتسمية الشحنات بشكل صحيح باستخدام التحميل الزائد للمقارنة.
يمتلك رصيف الشحن براميل نبيذ جاهزة لنقلها إلى المتاجر، ومع ذلك يجب تمييزها وتجهيزها بحيث يتمكن العمال من اختيارها وشحنها دون مشاكل. للقيام بذلك عليك استخدام التحميل الزائد للمقارنة، مشابه لـ التحميل الزائد للمشغل الذي تعلمته في الفصل السابق، يجب عليك تحميل فئة، هذه المرة باستخدام عوامل المقارنة.
هناك ثلاث (3) طلبات في الرصيف، يحتوي كل منها على برميلين (2). كل طلب يحتوي على لافتة تهدف إلى توضيح نسبة الوزن بين براميل الطلب. هناك فئة موضحة في المحرر باسم barrel تتيح لك استخدام التحميل الزائد للمقارنة. هناك أيضًا ثلاث (3) دوال معدة في المحرر: less_than() , greater_than() , equal_to()، وهذه الدوال تُستخدم لتوثيق نسبة الوزن على اللافتات.
ابدأ بالسير إلى علامات X الداكنة والفاتحة على السجاد الأحمر ومواجهة البراميل، استخدم دالة read() لتحديد اسم النبيذ في البرميل بالإضافة إلى وزن البرميل، مثل: await player.read(). قم بإنشاء كائنات للبراميل الداكنة والفاتحة، باستخدام فئة barrel، وأضف المعلومات التي تحددها من دالة read(). بمجرد إعداد الكائنات، قم بإنشاء كائن آخر يقارن بين الكائنين. على سبيل المثال:
red_barrel_dark = barrel("Wine name", 000) red_barrel_light = barrel("Wine name", 000) red_barrel_compare = red_barrel_dark < red_barrel_light
تأكد من كتابة اسم النبيذ في كائن فئة barrel تمامًا كما يظهر في الرسالة عند استخدامك لدالة read().
قم بإنشاء الكائنات وفقًا لاتفاقيات التسمية بناءً على السجاد وعلامة X الملونة. بالنسبة للسجاد الأحمر، عند مقارنة البراميل استخدم معامل < للتحقق مما إذا كان البرميل الداكن أخف وزنًا من البرميل الفاتح. لإنهاء هذا الجزء، توجه إلى علامة X الذهبية على السجاد الأحمر ومواجهة اللافتة. استخدم الدالة less_than() مع كائن المقارنة لرسم نسبة وزن البراميل، مثل: less_than(red_barrel_compare).
بعد ذلك، توجه إلى علامات X الداكنة والفاتحة على السجاد الأخضر وكرر نفس العملية. استخدم دالة read() على علامات X الداكنة والفاتحة وأنشئ الكائنات المقابلة بهذه المعلومات. بالنسبة لكائن مقارنة السجاد الأخضر، سنستخدم هذه المرة معامل > للتحقق مما إذا كان البرميل الداكن يزن أكثر من البرميل الفاتح. توجه إلى علامة X الذهبية على السجاد الأخضر ومواجهة اللافتة. استخدم الدالة greater_than() مع كائن المقارنة لرسم نسبة وزن البراميل، مثل: greater_than(green_barrel_compare).
توجه إلى علامات X الداكنة والفاتحة على السجاد الأزرق وكرر نفس العملية. استخدم دالة read() على علامات X الداكنة والفاتحة وأنشئ الكائنات المقابلة بهذه المعلومات. بالنسبة لكائن مقارنة السجاد الأزرق، سنستخدم هذه المرة معامل == للتحقق مما إذا كان البرميل الداكن يزن نفس وزن البرميل الفاتح. توجه إلى علامة X الذهبية على السجاد الأزرق ومواجهة اللافتة. استخدم الدالة equal_to() مع كائن المقارنة لرسم نسبة وزن البراميل، مثل: equal_to(blue_barrel_compare).
بمجرد تمييز جميع الطلبات، توجه إلى علامة X الذهبية على السجاد البرتقالي عند مخرج الرصيف. واجه اللافتة واستخدم الدالة write() لتدوين ما يحتويه كل طلب، واكتب أسماء كل برميل وفقًا للكائنات التي أنشأتها، على سبيل المثال بالنسبة لبراميل السجاد الأحمر: red_barrel_dark.name , red_barrel_light.name. قم بذلك لجميع البراميل الستة لاستكمال المستوى.