repr=False للحقل تخفيه من العرض المولد؛ compare تبقى True افتراضيًا، فيشارك في المساواة. [1]
الخلاصة السريعة
لا؛ memo تشارك رغم إخفائها من العرض. [1]
- repr=False للحقل تخفيه من العرض المولد؛ compare تبقى True افتراضيًا، فيشارك في المساواة. [1]
- على CPython 3.12.14، own وother من Entry، ولهما code=4؛ memo هي oak وpine بالترتيب، مع field(repr=False). [1]
- repr(own) وrepr(other) تعطيان النص Entry(code=4)؛ العرض المولد لا يضم memo هنا. [1]
- own==other تعطي False؛ اختلاف memo يؤثر في المساواة المولدة، رغم تطابق العرض. [1]
- تحكم: Entry(4,"oak") كائن جديد يساوي own؛ النتيجة True لتطابق الحقلين. نختبر عرضًا ومساواة مولدين، دون تخصيصهما أو فئات مختلفة. [1]
خياران مستقلان
repr=False للحقل تخفيه من العرض المولد؛ compare تبقى True افتراضيًا، فيشارك في المساواة. [1]
حقل مخفي
على CPython 3.12.14، own وother من Entry، ولهما code=4؛ memo هي oak وpine بالترتيب، مع field(repr=False). [1]
النص المعروض
repr(own) وrepr(other) تعطيان النص Entry(code=4)؛ العرض المولد لا يضم memo هنا. [1]
from dataclasses import dataclass,field @dataclass class Entry: code:int memo:str=field(repr=False) own=Entry(4,"oak");other=Entry(4,"pine") print(repr(own),repr(other)) [1]

المساواة والتحكم
own==other تعطي False؛ اختلاف memo يؤثر في المساواة المولدة، رغم تطابق العرض. [1]
print(own==other) control=Entry(4,"oak") print(own==control) [1]
تحكم: Entry(4,"oak") كائن جديد يساوي own؛ النتيجة True لتطابق الحقلين. نختبر عرضًا ومساواة مولدين، دون تخصيصهما أو فئات مختلفة. [1]
المراجع
للتوسع: لغات البرمجة.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
