عند امتلاء deque محدودة السعة، append تحذف من الطرف المقابل؛ insert ترفع IndexError إذا تجاوز الإدراج maxlen. [1]
الخلاصة السريعة
اختر العملية بحسب سلوكها عند الامتلاء. [1]
- maxlen تحدد الحد الأقصى لطول deque. [1]
- append تضيف إلى اليمين، وتحذف من اليسار عند الامتلاء. [1]
- مثال مؤلف شُغّل على CPython 3.12.14 مع from collections import deque؛ نبدأ بـ deque([4,8,12],maxlen=3): بعد append(16) تصبح [8,12,16]. [1]
- في نسخة أخرى من البداية نفسها، insert(1,16) ترفع IndexError وتبقى [4,8,12] في المثال. [1]
- التجربتان على نسختين منفصلتين؛ لا ننفذ insert بعد append ولا نختبر التزامن. [1]
حد الطول
maxlen تحدد الحد الأقصى لطول deque. [1]
الإضافة إلى الطرف
append تضيف إلى اليمين، وتحذف من اليسار عند الامتلاء. [1]
تجربة الإضافة
مثال مؤلف شُغّل على CPython 3.12.14 مع from collections import deque؛ نبدأ بـ deque([4,8,12],maxlen=3): بعد append(16) تصبح [8,12,16]. [1]
append(16) -> [8,12,16] [1]
![الإضافة تخرج 4 وتدخل 16؛ بعد الإدراج المرفوض تبقى [4,8,12].](https://images.bahralolom.com/assets/local-2000-20261012/BA-0885/python-deque-full-insert-values.png)
تجربة الإدراج
في نسخة أخرى من البداية نفسها، insert(1,16) ترفع IndexError وتبقى [4,8,12] في المثال. [1]
insert(1,16) -> IndexError [1]
التجربتان على نسختين منفصلتين؛ لا ننفذ insert بعد append ولا نختبر التزامن. [1]
المراجع
للتوسع: موضع الإدراج.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
![من [4,8,12] بسعة 3: append(16) تنتج [8,12,16]؛ insert(1,16) ترفع IndexError.](https://images.bahralolom.com/assets/local-2000-20261012/BA-0885/python-deque-full-insert-main.png)