SimpleNamespace تقارن سمات كائنين منها؛ المقارنة مع قاموسنا تعطي False. [1] [2]
الخلاصة السريعة
لا هنا؛ الكائن ليس مساويًا للقاموس. [1] [2]
- SimpleNamespace تقارن سمات كائنين منها؛ المقارنة مع قاموسنا تعطي False. [1] [2]
- على CPython 3.12.14، own وother من SimpleNamespace بالسمتين x=2 وy=5؛ نعكس ترتيب الوسيطين عند بناء other. [1] [2]
- own==other تعطي True؛ تغيير ترتيب البناء لم يمنع المساواة هنا. [1] [2]
- data قاموس عادي بالمفتاحين والقيمتين نفسيهما؛ own==data تعطي False. [1] [2]
- تحكم: vars(own)==data تعطي True. vars هنا تعيد قاموس السمات؛ نقارن القاموسين، لا الكائن بالقاموس. قيم السمتين أعداد صحيحة. [1] [2]
السمات ونوع الطرفين
SimpleNamespace تقارن سمات كائنين منها؛ المقارنة مع قاموسنا تعطي False. [1] [2]
كائنان للمقارنة
على CPython 3.12.14، own وother من SimpleNamespace بالسمتين x=2 وy=5؛ نعكس ترتيب الوسيطين عند بناء other. [1] [2]
بين الكائنين
own==other تعطي True؛ تغيير ترتيب البناء لم يمنع المساواة هنا. [1] [2]
from types import SimpleNamespace own=SimpleNamespace(x=2,y=5) other=SimpleNamespace(y=5,x=2) print(own==other) [1] [2]

القاموس والتحكم
data قاموس عادي بالمفتاحين والقيمتين نفسيهما؛ own==data تعطي False. [1] [2]
data={"x":2,"y":5} print(own==data) print(vars(own)==data) [1] [2]
تحكم: vars(own)==data تعطي True. vars هنا تعيد قاموس السمات؛ نقارن القاموسين، لا الكائن بالقاموس. قيم السمتين أعداد صحيحة. [1] [2]
المراجع
للتوسع: لغات البرمجة.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
