كيفية طرح قائمتين في بايثون

Python قوية ولكنها بسيطة وسهلة الاستيلاء عليها للمبتدئين مقارنة بلغات البرمجة الأخرى. التسلسل هو بنية البيانات الأساسية في بايثون.

يتم تعيين رقم لكل عنصر من عناصر التسلسل - موضعه أو فهرسه. في تسلسل ، الفهرس الأول هو 0 ؛ الفهرس الثاني هو 1 ، وهكذا.

لدى Python ستة هياكل بيانات متسلسلة مضمنة. من بينها ، القوائم ، tuple ، والمصفوفة مستخدمة على نطاق واسع في Python. هذه المقالة سوف تناقش قوائم بايثون و كيفية طرح قائمتين في بايثون .



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

القوائم هي أنواع البيانات الأكثر تنوعًا وديناميكية في Python. يمكننا تخزين أنواع مختلفة من البيانات داخل قائمة.

لا يهم إذا كانت أرقامًا أو أحرفًا أو سلاسل. لتهيئة قائمة ، يجب أن نضع جميع القيم داخل قوس مربع ونشتق بين كل قيمة باستخدام فاصلة.

تُعرف عناصر القائمة بالعنصر. من فضلك ، لاحظ أن القوائم قابلة للتغيير. يمكننا إضافة أو إزالة أو تعديل العناصر في أي وقت في برنامج Python. فيما يلي مثال على قائمة بايثون:

demo_list1 = ['Mark', 'Alex', 1987, 2020]

demo_list2 = [5, 4, 3, 2, 1 ]

demo_list3 = ["x", "y", "z"]

لطباعة قائمة ، نحتاج فقط إلى كتابة ملف مطبعة() تعمل في بايثون. مثل هذه الطريقة:

print(demo_list1)

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

باستخدام تعيين()

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

def list_diff(my_list1, my_list2):

    return (list(set(my_list1) - set(my_list2)))

my_list1 = [10, 16, 21, 26, 31, 36, 41]

my_list2 = [10, 26, 41, 36]
print(list_diff(my_list1, my_list2))

انتاج | : [ 16 و واحد وعشرين و 31 ]

ال تعيين() وظيفة قبلت القائمتين المحددتين في البرنامج أعلاه وحولتهما إلى مجموعات. داخل مطبعة() وظيفة ، فقط حسبت الفرق.

باستخدام حلقة for-loop المتداخلة

لحساب قيمة الطرح بين قائمتين مختلفتين ، يمكننا ببساطة استخدام حلقة for-loop المتداخلة.

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

نهاية البرنامج ، سنقوم بطباعة القائمة. ها أنت ذا:

def list_diff(my_list1, my_list2):

    out = []

    for ele in my_list1:

    	if not ele in my_list2:

        	out.append(ele)

    return out

my_list1 = [10, 16, 21, 26, 31, 36, 41]

my_list2 = [10, 26, 41, 36]

print(list_diff(my_list1, my_list2))

انتاج: [ 16 و واحد وعشرين و 31 ]

باستخدام طريقة قائمة الفهم

List comprehension (فهم القائمة) هو نفس طريقة (for-loop) المتداخلة. هنا سنستبدل for-loop ببنية list comprehension. على سبيل المثال،

def list_diff(my_list1, my_list2):

    out = [item for item in my_list1 if not item in my_list2]

    return out

my_list1 = [10, 16, 21, 26, 31, 36, 41]

my_list2 = [10, 26, 41, 36]

print(list_diff(my_list1, my_list2))

انتاج: [ 16 و واحد وعشرين و 31 ]

نأمل أنه بعد الانتهاء من هذا البرنامج التعليمي ، يجب أن تعرف عدة طرق لطرح قائمتين من Python. ومع ذلك ، يمكنك التدرب أكثر على الأمثلة لاكتساب الثقة.