"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > الخصائص والسمات في بايثون

الخصائص والسمات في بايثون

تم النشر بتاريخ 2024-08-06
تصفح:910

Properties and attributes in Python

عند كتابة التعليمات البرمجية في بايثون، هناك العديد من الوظائف المختلفة التي يمكنك كتابتها. في هذه الوظائف يمكنك إنشاء السمات والممتلكات.

تعريف السمات هي المتغيرات التي تنتمي إلى كائن ما. تعريف الخصائص هي السمات التي يتم التحكم فيها عن طريق الأساليب.

فيما يلي مثال على السمات والخصائص.

صفات:

class Traveler:
    some attribute= "All members of this class will have this attribute."
    def __init__(self, name):
         self.name = name

الاسم هو سمة من سمات فئة المسافر. نظرًا لوجودها داخل الوظيفة فهي سمة المثيل.

ستكون بعض السمات هي نفسها لجميع المسافرين بينما يمكن تغيير الاسم لكل مسافر.

يمكن أن تحتوي فئة المسافر على العديد من السمات مثل العمر والطول وما إلى ذلك... توفر هذه السمات مزيدًا من المعلومات حول الفئة. على غرار الدعائم في React.

ملكيات:
عند الإضافة إلى الكود أعلاه، يمكنك الحصول على الاسم وتعيينه باستخدام بعض المعلمات. ثم سيكون لديك خاصية للاسم.

def get_name(self):
    return self._name

def set_name(self, name):
    if type(name)==str and len(name) > 0:
         self._name = name
    else:
         print("Name needs to be a string and longer than 0 characters.")

الاسم = الخاصية (get_name،set_name)

يحصل get_name على الاسم ثم يقوم تعيين الاسم بتعيين الاسم باستخدام المعلمات الموجودة في الكود. عندما يتم إدخال الاسم دون اتباع تلك المعلمات، تقوم وحدة التحكم بطباعة رسالة خطأ حول المتطلبات. ثم تقوم الخاصية باستدعاء get_name وset_name عند استدعاء الخاصية. انظر أدناه للحصول على طريقة للاتصال بالعقار بالاسم.

some_traveler = Traveler(name="Spencer")

يتم تمرير الاسم المعادل Spencer إلى فئة Traveler ويتم استدعاء اسم الخاصية. يحصل على الاسم ثم يحدده. وبما أنها سلسلة وأكبر من 0 حرف، فيمكن ضبطها دون ظهور رسالة خطأ. الآن عندما يتم استدعاء some_traveler.name سيكون Spencer.

بيان الافراج تم نشر هذه المقالة على: https://dev.to/spencer_adler_880da14d230/properties-and-attributes-in-python-39aj?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3