2
إضافة عنصر وحذفه والمرور على القائمة
ICT Prep 3 Term 1, Unit 1, Lesson 3: pp. 34–42
الهدفأضيف عناصر وأحذفها بـ append وremove وأمرّ على القائمة وأتوقع شكلها بعد التغييرات.
كلمات جديدة
الدالة append() · تضيف عنصرًا في نهاية القائمةالدالة remove() · تحذف أول عنصر يساوي القيمة المعطاةfor على قائمة · حلقة تمر على كل عنصر بالترتيبValueError · تظهر حين لا تجد remove() القيمة
الشرح
تستطيع القائمة أن تكبر وتصغر. السطر names.append("Sami") يضيف Sami في النهاية. والسطر names.remove("Omar") يحذف أول عنصر يساوي Omar. لاحظ أن remove تأخذ القيمة لا الموضع. وإذا لم تكن القيمة في القائمة توقفت بايثون بخطأ ValueError. وتمر الحلقة على كل العناصر: for name in names تعمل مرة لكل عنصر بالترتيب. ولتوقع نتيجة عدة تغييرات اكتب القائمة من جديد بعد كل سطر كما في الجدول. وهذه هي عادة التتبع نفسها التي استعملتها في الأسبوع الثالث مع الحلقة.
| A | B | |
|---|---|---|
| 1 | بعد السطر | numbers |
| 2 | numbers = [5, 9] | [5, 9] |
| 3 | numbers.append(2) | [5, 9, 2] |
| 4 | numbers.remove(5) | [9, 2] |
| 5 | numbers[0] = 1 | [1, 2] |
أمثلة محلولة
Python
1names = ["Mona", "Omar"] 2names.append("Sami") 3print(names) 4names.remove("Omar") 5print(names) 6for name in names: 7 print(name)
Output
['Mona', 'Omar', 'Sami'] ['Mona', 'Sami'] Mona Sami
Python
1names = ["Mona", "Sami"] 2names.remove("Adam")
Output
ValueError: the value is not in the list
نشاط الفصل
ابدأ بالقائمة [3, 6, 9]. طبّق على الورق: append(12) ثم remove(6) ثم غيّر العنصر الأول إلى 1. اكتب القائمة بعد كل خطوة. ثم اكتب السطر الذي يسبب ValueError.
تدرّب
1
ما القائمة بعد numbers = [2, 4] ثم numbers.append(6)؟
[2, 4, 6].
2
ماذا تحذف remove(5) من [5, 9, 5]؟
الرقم ٥ الأول فقط، فتصبح القائمة [9, 5].
3
هل تأخذ remove قيمة أم موضعًا؟
قيمة.
4
كم مرة تعمل for name in names مع قائمة فيها ٤ أسماء؟
أربع مرات، مرة لكل عنصر.