قوائم الطرح: حساب الفرق
يمكن أن تحتوي القوائم في بايثون على عناصر مختلفة. لإجراء عمليات حسابية على القوائم، مثل الطرح، نستخدم أساليب أو تقنيات محددة. دعونا نستكشف كيفية طرح قائمة من أخرى.
استخدام فهم القائمة لطرح عنصر تلو الآخر
أحد الأساليب هو استخدام فهم القائمة، والذي يتكرر القائمة الأولى ويحسب الفرق مع الحفاظ على الترتيب الأصلي:
[item for item in x if item not in y]
مجموعات الطرح لإجراء عمليات حسابية أسرع
إذا لم يكن الحفاظ على ترتيب العناصر أمرًا بالغ الأهمية، فإن النهج القائم على المجموعة يوفر حسابات أسرع:
list(set(x) - set(y))
تجاوز sub لعمليات الطرح في القائمة
لتمكين طرح القائمة باستخدام عامل التشغيل infix "-"، يمكننا تجاوز طريقة __sub__ لفئة ترث من القائمة:
class MyList(list): def __init__(self, *args): super(MyList, self).__init__(args) def __sub__(self, other): return self.__class__(*[item for item in self if item not in other])
مثال للاستخدام:
x = MyList(1, 2, 3, 4) y = MyList(2, 5, 2) z = x - y # z becomes a MyList object containing the difference
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3