هذا نص مترجم آليًا وقد يحتوي على أخطاء!
Enums
Enums (enumerations) هي طريقة لتعريف نوع بيانات يمكن أن يحتوي فقط على مجموعة محدودة من القيم المعرفة مسبقًا. هذا يجعل من السهل تجنب الأخطاء من خلال التأكد من أن المتغير يمكن أن يحتوي فقط على قيم صالحة.
لا تستخدم Enums بشكل صارم للتحقق من الصحة، ولكنها تساعدنا في تقييد القيم الصالحة لمتغير، وبالتالي يمكن أن تساعد في منع الأخطاء.
على سبيل المثال، إذا كان لديك فئة تمثل سيارة، يمكنك استخدام Enum لتحديد الألوان التي يمكن أن تكون عليها السيارة:
from enum import Enum
class CarColor(Enum):
RED = "red"
BLUE = "blue"
GREEN = "green"
BLACK = "black"
WHITE = "white"
class Car:
def __init__(self, make: str, model: str, year: int, color: CarColor):
self.make = make
self.model = model
self.year = year
self.color = color
لماذا؟
يعطينا محرر الأكواد المتكامل لدينا استكمالاً أفضل للأكواد عند استخدامنا للتعدادات، كما أنه يمنع (يجعل من الصعب) تعيين قيم غير صالحة. إذا حاولنا إسناد لون غير معرّف في CarColor، فسيقوم بايثون برمٍ خطأ. هذا يجعل الكود أكثر متانة وأسهل في الصيانة. كلما قلّت الأخطاء المحتملة التي يمكن أن تحدث، تحسّنت جودة كودنا.
تخيّل أننا لدينا دالة تعالج طرق الدفع: PayPal وVISA وMASTERCARD وBITCOIN.通过使用 تعداد لطرق الدفع، يمكننا ضمان أن الدالة تستقبل فقط طرق دفع صالحة، وليس "MASTERCARDD" أو "CASH"، مما قد يؤدي إلى أخطاء في البرنامج.
المهمة 1 - إنشاء Enum
أنشئ Enum باسم EyeColor وقم بتطبيقه في فئة Person من الوحدة السابقة. يجب أن يحتوي EyeColor على القيم التالية:
BLUEBROWNGREENHAZEL
تُستخدم التعدادات (Enums) كثيرًا في تطوير الألعاب
إذا تصفحت توثيق ألعاب مختلفة، فستلاحظ غالبًا أنهم يستخدمون التعدادات لتعريف أشياء مثل الأسلحة والأعداء والمستويات وما إلى ذلك. والسبب في ذلك هو أنه يجعل التعامل مع هذه الأشياء أسهل داخل الكود، ويجعل من السهل تجنب الأخطاء.

