• 0

كيف أحذف عنصر من قائمة إذا كان موجودا في بايثون؟

أريد التخلص من العناصر الفارغة في قائمة في برنامجي المكتوب بلغة بايثون، لذلك أريد طريقة سهلة لحذف عنصر فقط في حالة كان موجودا، فكيف أستطيع فعل ذلك؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هنالك عدّة طرق لحذف عنصر معين في بايثون في حالة وجوده، فمثلا يمكن كتابة جملة شبه إنجليزية للتأكد من وجود العنصر ومن ثم الحذف كما في المثال التالي:

if thing in some_list: some_list.remove(thing)

جرّب أيضًا استخدام try except كما في المثال الثاني:

try:
    some_list.remove(thing)
except ValueError:
    pass # or scream: thing not in some_list!
except AttributeError:
    pass # call security, some_list not quacking like a list!

كما يمكنك استخدام دوال lambda وfilter للتأكد والحذف كما يبدو ذلك في المثال التالي:

is_not_thing = lambda x: x is not thing
cleaned_list = filter(is_not_thing, some_list)

وأما الطريقة الأخيرة فهي طريقة حسابية وسنستخدم فيها حلقة التكرار for كما في المثال التالي:

for item in (x for x in some_list if x is not thing):
    do_your_thing_with(item)

المصدر

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن