تقنية

values في بايثون: هل تقارن == القيم المعروضة؟

مقارنة العرضين False؛ مقارنة قائمتَي القيم True.
عرض وقائمة.

مقارنة عرضين مختلفين من values لا تعمل كمقارنة قائمتَي القيم. [1]

الخلاصة السريعة

قد تتطابق القيم وتكون مقارنة العرضين False. [1]

  • مقارنة عرضين مختلفين من values لا تعمل كمقارنة قائمتَي القيم. [1]
  • كل استدعاء values يعيد كائن عرض جديدًا للقيم. [1]
  • مثال مؤلف على CPython 3.12.14: d={"r":4,"b":4}؛ v=d.values()؛ w=d.values()؛ v==w تعطي False. [1]
  • list(v) وlist(w) تعطيان [4,4]؛ list(v)==list(w) تعطي True في المثال. [1]
  • أما v==v فتعطي True هنا؛ ميّز مقارنة العرض بنفسه من مقارنة عرضين مختلفين. [1]

عرض وقيم

مقارنة عرضين مختلفين من values لا تعمل كمقارنة قائمتَي القيم. [1]

عرض جديد

كل استدعاء values يعيد كائن عرض جديدًا للقيم. [1]

عرضان من القاموس نفسه

مثال مؤلف على CPython 3.12.14: d={"r":4,"b":4}؛ v=d.values()؛ w=d.values()؛ v==w تعطي False. [1]

v==w -> False [1]

العرض مع نفسه يعطي True؛ العرضان المختلفان يعطيان False.
عرضان وعرض بنفسه.

قائمتان والعرض نفسه

list(v) وlist(w) تعطيان [4,4]؛ list(v)==list(w) تعطي True في المثال. [1]

list(v)==list(w) -> True [1]

أما v==v فتعطي True هنا؛ ميّز مقارنة العرض بنفسه من مقارنة عرضين مختلفين. [1]

المراجع

  1. Python — values

للتوسع: لغات البرمجة.

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