UserList تهيئ محتواها بنسخة من قائمة البداية؛ تخزنه في القائمة data. [1]
الخلاصة السريعة
لا في مثالنا؛ إضافة عنصر إلى إحدى القائمتين لا تضيفه إلى الأخرى. [1]
- UserList تهيئ محتواها بنسخة من قائمة البداية؛ تخزنه في القائمة data. [1]
- data قائمة فعلية؛ wrapped.data is source تعطي False في تجربتنا، فهما قائمتان مختلفتان. [1]
- على CPython 3.12.14، source=[4,8] وwrapped=UserList(source)؛ ثم ننفذ source.append(12). [1]
- بعد الإضافة، source هي [4,8,12]، وwrapped.data ما زالت [4,8]. [1]
- تحكم متتابع: wrapped.append(16) تجعل data تساوي [4,8,16]، وتبقي source=[4,8,12]؛ المثال قائمة أعداد صحيحة فقط. [1]
تهيئة بنسخة
UserList تهيئ محتواها بنسخة من قائمة البداية؛ تخزنه في القائمة data. [1]
هوية القائمتين
data قائمة فعلية؛ wrapped.data is source تعطي False في تجربتنا، فهما قائمتان مختلفتان. [1]
إضافة إلى المصدر
على CPython 3.12.14، source=[4,8] وwrapped=UserList(source)؛ ثم ننفذ source.append(12). [1]
from collections import UserList source=[4,8] wrapped=UserList(source) source.append(12) print(source,wrapped.data) [1]

القيم والتحكم
بعد الإضافة، source هي [4,8,12]، وwrapped.data ما زالت [4,8]. [1]
wrapped.append(16) print(source,wrapped.data) print(wrapped.data is source) [1]
تحكم متتابع: wrapped.append(16) تجعل data تساوي [4,8,16]، وتبقي source=[4,8,12]؛ المثال قائمة أعداد صحيحة فقط. [1]
المراجع
للتوسع: لغات البرمجة.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
