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

كيف أتأكد من مساواة قائمتين غير مرتبتين في بايثون؟

TheBrain

السؤال

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

['one', 'two', 'three'] == ['one', 'two', 'three'] :  true
['one', 'two', 'three'] == ['one', 'three', 'two'] :  true
['one', 'two', 'three'] == ['one', 'two', 'three', 'three'] :  false
['one', 'two', 'three'] == ['one', 'two', 'three', 'four'] :  false
['one', 'two', 'three'] == ['one', 'two', 'four'] :  false
['one', 'two', 'three'] == ['one'] :  false
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

هنالك عدّة طرق للتأكد من مساواة قائمتين في بايثون، فبايثون يمتلك نوع بيانات مدمجة تدعى set تم إنشاؤها خصيصا للمجموعات غير المرتبة، لذلك إذا حوّلت كلتا القائمتين إلى set فستتمكن من المقارنة من دون مشاكل لأن النوع set هو نوع غير مرتّب كما في المثال التالي:

set(x) == set(y)

أو يمكنك ببساطة ترتيب هاتين القائمتين ومن ثم المقارنة بشكل عادي عن طريق استخدام دالة sort() أو sorted() كما في المثال التالي:

>>> a = [1,1,2]
>>> b = [1,2,2]
>>> a.sort()
>>> b.sort()
>>> a == b
False

يمكنك اختصار الشيفرة البرمجية السابقة إلى هذه:

sorted(a) == sorted(b)

ملاحظة: إذا لم ترغب بتغيير مواقع عناصر القائمة لكنك تريد عمل ترتيب خيالي فاستخدم sorted.
المصدر

رابط هذا التعليق
شارك على الشبكات الإجتماعية

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...