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

كيفية تتبع واسترجاع متغيرات المثيلات في فئات بايثون بكفاءة؟

تم النشر بتاريخ 2024-11-09
تصفح:584

 How to Efficiently Track and Retrieve Instance Variables in Python Classes?

تتبع مثيلات الفئة لمجموعة المتغيرات

يسمح الاحتفاظ بقائمة المثيلات لفئة معينة باسترجاع فعال لمتغيرات محددة من كل مثيل في مرحلة لاحقة من البرنامج.

نهج متغير الفئة

الطريقة المناسبة لتتبع مثيلات الفصل هي استخدام متغير الفصل. يوضح المثال التالي هذا الأسلوب:

class Foo: الحالات = [] تعريف __init__(الذات): الذات.x = {} Foo.instances.append(self)
class Foo:
    instances = []

    def __init__(self):
        self.x = {}
        Foo.instances.append(self)
تقوم هذه التقنية بإنشاء مثيلات قائمة مشتركة داخل الفصل. عندما يتم إنشاء كل مثيل، فإنه يلحق نفسه بالقائمة.

استرداد متغيرات المثيل

لجمع x قواميس من جميع المثيلات في نهاية البرنامج، قم بإنشاء قاموس جديد:

foo_vars = {id(instance): example.x على سبيل المثال في Foo.instances
class Foo:
    instances = []

    def __init__(self):
        self.x = {}
        Foo.instances.append(self)
هنا، يوفر id() معرفات فريدة لكل مثيل، مما يتيح إنشاء قاموس بمعرفات المثيلات كمفاتيح وقواميس x كقيم.

قائمة مشتركة

يضمن نهج متغير الفئة الاحتفاظ بقائمة واحدة فقط، مثيلات، عبر جميع المثيلات، بغض النظر عن عددهم. وهذا يلغي الحاجة إلى تتبع القوائم الفردية لكل مثيل.

أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3