حذف العناصر من القوائم باستخدام دالة pop() في Python

تمت الكتابة بواسطة: عبد الحكيم

تارخ آخر تحديث: 19 ديسمبر 2024

محتوى المقال

حذف العناصر من القوائم باستخدام دالة pop() في Python

في لغة البرمجة Python، القوائم (Lists) هي هياكل بيانات مرنة تُستخدم لتخزين مجموعات من العناصر. في بعض الأحيان، تحتاج إلى حذف عنصر من القائمة. توفر دالة pop() طريقة فعالة لحذف العناصر من القوائم. في هذا المقال، سنتعرف على كيفية استخدام دالة pop() لحذف العناصر من القوائم، مع تقديم أمثلة عملية توضح كيفية التحكم في حذف العناصر من أماكن مختلفة في القائمة.

ما هي دالة pop()؟

دالة pop() هي دالة مدمجة في Python تُستخدم لحذف عنصر من القائمة عند موضع معين وإعادته. إذا لم تقم بتحديد الفهرس (index) المراد حذف العنصر منه، فإن دالة pop() ستقوم بحذف وإرجاع آخر عنصر في القائمة.

الصيغة العامة للدالة هي:

list_name.pop(index)

حيث:

  • list_name: اسم القائمة التي تريد حذف العنصر منها.
  • index (اختياري): الفهرس الذي تريد حذف العنصر عنده. إذا لم يتم تحديده، فسيتم حذف آخر عنصر في القائمة.

حذف آخر عنصر في القائمة باستخدام pop()

إذا لم تقم بتحديد الفهرس عند استدعاء pop()، فستقوم الدالة بحذف وإرجاع آخر عنصر في القائمة.

مثال 1: حذف آخر عنصر من القائمة

لنقم بحذف آخر عنصر من قائمة تحتوي على أسماء:

names = ["أحمد", "سارة", "كريم", "ليلى"]
last_name = names.pop()
print(last_name) # الناتج: "ليلى"
print(names) # الناتج: ['أحمد', 'سارة', 'كريم']

في هذا المثال، تم حذف العنصر الأخير "ليلى" من القائمة names، وتم إرجاعه.

حذف عنصر من موضع محدد باستخدام pop()

يمكنك أيضًا استخدام pop() لحذف عنصر من موضع معين في القائمة. كل عنصر في القائمة له فهرس (index) يبدأ من 0، لذا يمكنك تحديد الفهرس لحذف عنصر معين.

مثال 2: حذف عنصر من منتصف القائمة

لنقم بحذف العنصر الموجود في الفهرس 1 من القائمة:

numbers = [10, 20, 30, 40]
removed_number = numbers.pop(1)
print(removed_number) # الناتج: 20
print(numbers) # الناتج: [10, 30, 40]

في هذا المثال، تم حذف العنصر في الفهرس 1 وهو 20، وتم تعديل القائمة بعد الحذف.

استخدام pop() مع الفهارس السالبة

في Python، يمكنك استخدام الفهارس السالبة لحذف العناصر من نهاية القائمة. على سبيل المثال، الفهرس -1 يشير إلى آخر عنصر، والفهرس -2 يشير إلى العنصر الذي يسبقه، وهكذا.

مثال 3: حذف العنصر قبل الأخير باستخدام الفهرس السالب

لنقم بحذف العنصر قبل الأخير من القائمة باستخدام فهرس سالب:

fruits = ["تفاح", "موز", "عنب", "برتقال"]
removed_fruit = fruits.pop(-2)
print(removed_fruit) # الناتج: "عنب"
print(fruits) # الناتج: ['تفاح', 'موز', 'برتقال']

في هذا المثال، تم حذف العنصر "عنب" وهو العنصر قبل الأخير باستخدام الفهرس السالب -2.

التعامل مع قائمة فارغة باستخدام pop()

إذا قمت باستدعاء pop() على قائمة فارغة دون تحديد فهرس، سيؤدي ذلك إلى حدوث خطأ IndexError لأن القائمة لا تحتوي على أي عناصر ليتم حذفها.

مثال 4: استدعاء pop() على قائمة فارغة

لنرى ماذا يحدث عند محاولة حذف عنصر من قائمة فارغة:

empty_list = []
try:
    empty_list.pop()
except IndexError:
    print("لا يمكنك حذف عنصر من قائمة فارغة!")
# الناتج: لا يمكنك حذف عنصر من قائمة فارغة!

في هذا المثال، قمنا بمحاولة حذف عنصر من قائمة فارغة، مما أدى إلى حدوث خطأ IndexError، وقمنا بالتعامل معه باستخدام كتلة try-except.

إرجاع العنصر المحذوف

عند حذف عنصر باستخدام pop()، يتم إرجاع العنصر المحذوف. يمكنك تخزين هذا العنصر في متغير لاستخدامه لاحقًا في البرنامج.

مثال 5: استخدام العنصر المحذوف بعد حذفه

لنقم بحذف عنصر من قائمة ثم نستخدمه لاحقًا في البرنامج:

colors = ["أحمر", "أزرق", "أخضر"]
removed_color = colors.pop(1)
print("تم حذف اللون:", removed_color)
print("الألوان المتبقية:", colors)
# الناتج:
# تم حذف اللون: أزرق
# الألوان المتبقية: ['أحمر', 'أخضر']

في هذا المثال، قمنا بتخزين العنصر المحذوف "أزرق" في متغير removed_color واستخدمناه لاحقًا لعرض رسالة.

حذف جميع العناصر باستخدام pop() في حلقة

يمكنك استخدام دالة pop() داخل حلقة تكرارية لحذف جميع العناصر من القائمة، عنصرًا تلو الآخر.

مثال 6: حذف جميع العناصر باستخدام حلقة

لنقم بحذف جميع العناصر من قائمة باستخدام pop() في حلقة:

numbers = [1, 2, 3, 4]
while numbers:
    numbers.pop()
print("القائمة بعد الحذف الكامل:", numbers)
# الناتج: القائمة بعد الحذف الكامل: []

في هذا المثال، قمنا بحذف جميع العناصر من القائمة numbers باستخدام حلقة while، وتم إفراغ القائمة بالكامل.

الخلاصة

دالة pop() في Python هي أداة قوية ومرنة لحذف العناصر من القوائم. يمكنك استخدامها لحذف آخر عنصر أو تحديد فهرس لحذف عنصر معين. كما يمكنك التعامل مع الفهارس السالبة لحذف العناصر من نهاية القائمة. من المهم أيضًا الانتباه إلى أن استخدام pop() على قائمة فارغة سيؤدي إلى حدوث خطأ IndexError، لذلك يجب التعامل معه بحذر. تعد pop() جزءًا أساسيًا من أدوات التعامل مع القوائم في Python.

طور مهاراتك: مقالات يجب قراءتها في البرمجة