اذهب إلى المحتوى

السؤال

نشر

لدي قائمتين بالشكل التالي:

lst1 = ['One', 'Two', 'Three', 'Four']
lst2  = ['One', 'Two']

كيف أحصل على العناصر الموجودة في القائمة الأولى وغير الموجودة في القائمة الثانية، لتكون النتيجة في النهاية:

result = ['Three', 'Four']

 

Recommended Posts

  • 0
نشر

يمكن عمل الفلترة بدون set حتى:

temp3 = [item for item in temp1 if item not in temp2]

يمكن استخدام المكتبة deepdiff:

# تنصيب
pip install deepdiff

>>> t1 = {1:1, 2:2, 3:3}
>>> t2 = {1:1, 2:4, 3:3}
>>> pprint(DeepDiff(t1, t2), indent=2)
{'values_changed': {'root[2]': {'newvalue': 4, 'oldvalue': 2}}}

توثيق المكتبة: deepdiff

  • 0
نشر

يمكنك إستخدام معامل XOR بايثون

  • هذا سيقوم بإزالة المكرارات في كل قائمة
set(lst1) ^ set(lst2)

يمكنك إستخدامه كالآتي

lst1 = ['One', 'Two', 'Three', 'Four']
lst2  = ['One', 'Two']

lst3 = set(lst1) ^ set(lst2)
print(lst3)

ويمكنك إستخدام الدالة من هذا الكود

lst1 = ['One', 'Two', 'Three', 'Four']
lst2  = ['One', 'Two']

def Diff(li1, li2):
    return list(set(li1) - set(li2)) + list(set(li2) - set(li1))
 
print(Diff(lst1,lst2))

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...