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

كيف يمكنك إنشاء كائنات غير قابلة للتغيير في بايثون؟

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

How Can You Create Immutable Objects in Python?

إنشاء كائنات غير قابلة للتغيير في بايثون

لقد حير التحدي المتمثل في إنشاء كائنات غير قابلة للتغيير في بايثون المطورين الذين يسعون إلى إنشاء هياكل بيانات لا يمكن تعديلها. بينما توفر الصفوف الفرعية حلاً، فإنها تقدم مشكلات إمكانية الوصول مع السمات.

يتضمن أحد الحلول المقترحة تحديد نوع يسمى غير قابل للتغيير مشتق من الصف. فهو يتجاوز المُنشئين ويقيد تعديلات السمات، ويمنع بشكل فعال إجراء تغييرات على حالة الكائن. ومع ذلك، لا يزال هذا الأسلوب يسمح بالوصول إلى السمات من خلال الفهارس، وهو ما قد لا يكون مرغوبًا فيه.

هناك نهج بديل يقترحه المستجيبون يقدم استخدام المجموعات.اسمها Tuple. تقوم هذه المكتبة بإنشاء أنواع غير قابلة للتغيير مع سمات مسماة. توفر المجموعات المسماة امتيازات مثل التوافق مع الاختيار والنسخ، وتبسيط تسلسل البيانات ومعالجتها.

باستخدام المجموعات المسماة، يمكن للمرء إنشاء كائنات غير قابلة للتغيير بسرعة ذات سمات محددة:

Immutable = collections.namedtuple("Immutable", ["a", "b"])
على الرغم من أن هذا النهج لا يلغي تمامًا إمكانية الوصول إلى السمات عبر المؤشرات، إلا أنه يوفر حلاً أكثر إيجازًا وتنوعًا لإنشاء كائنات غير قابلة للتغيير في Python .

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

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

Copyright© 2022 湘ICP备2022001581号-3