الفرق بين المراجعتين ل"Python/set operations"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
سطر 1: سطر 1:
تدعم المجموعات والمجموعات الجامدة في بايثون العمليات الموضّحة في الجدول التالي:
+
تقدّم بايثون مجموعة من العمليات الخاصة [[Python/set|بالمجموعات]] و<nowiki/>[[Python/set#.D8.A7.D9.84.D9.85.D8.AC.D9.85.D9.88.D8.B9.D8.A7.D8.AA .D8.A7.D9.84.D8.AC.D8.A7.D9.85.D8.AF.D8.A9 .28frozenset.29|المجموعات الجامدة]].
 +
 
 +
== العمليات المشتركة بين المجموعات والمجموعات الجامدة ==
 +
تدعم [[Python/set|المجموعات]] و<nowiki/>[[Python/set#.D8.A7.D9.84.D9.85.D8.AC.D9.85.D9.88.D8.B9.D8.A7.D8.AA .D8.A7.D9.84.D8.AC.D8.A7.D9.85.D8.AF.D8.A9 .28frozenset.29|المجموعات الجامدة]] في بايثون العمليات الموضّحة في الجدول التالي:
 
{| class="wikitable"
 
{| class="wikitable"
 
!العملية
 
!العملية
سطر 44: سطر 47:
 
|<code>set & other</code>
 
|<code>set & other</code>
 
|يعيد هذا العامل مجموعة جديدة تضمّ العناصر المشتركة بين المجموعتين <code>set</code> و <code>other</code>.
 
|يعيد هذا العامل مجموعة جديدة تضمّ العناصر المشتركة بين المجموعتين <code>set</code> و <code>other</code>.
 
 
أي يعيد المجموعة الناتجة عن تقاطع intersection المجموعتين.
 
أي يعيد المجموعة الناتجة عن تقاطع intersection المجموعتين.
 
|تؤدي الدالة <code>[[Python/set/intersection|intersection()‎]]</code> الوظيفة ذاتها.
 
|تؤدي الدالة <code>[[Python/set/intersection|intersection()‎]]</code> الوظيفة ذاتها.
سطر 58: سطر 60:
 
|تؤدي الدالة [[Python/set/symmetric difference|symmetric_difference()‎]] الوظيفة ذاتها.
 
|تؤدي الدالة [[Python/set/symmetric difference|symmetric_difference()‎]] الوظيفة ذاتها.
 
|}
 
|}
 +
'''ملاحظة:''' تتطلب العوامل المذكورة في الجدول السابق أن تكون معاملاتها من [[Python/setattr|المجموعات]] حصرًا، أما الدوال المناظرة لهذه العوامل فيمكن أن تتقبّل أي كائن قابل للتكرار iterable كمعامل.
 +
 +
== العمليات الخاصة بالمجموعات ==
 +
نظرًا لكون المجموعات كائنات قابلة للتعديل بخلاف المجموعات الجامدة، فإنّ الأولى تدعم مجموعة من العمليات الخاصة الموضّحة في الجدول التالي:
 +
{| class="wikitable"
 +
!العملية
 +
!الوصف
 +
!ملاحظات
 +
|-
 +
|<code><nowiki>set |= other</nowiki></code>
 +
|يحدّث هذا العامل المجموعة <code>set</code> بإضافة عناصر المجموعة <code>other</code> إليها.
 +
|تؤدي الدالة <code>[[Python/set/update|update()‎]]</code> الوظيفة ذاتها.
 +
|-
 +
|<code>set &= other</code>
 +
|يحدّث هذا العامل المجموعة set بالإبقاء على عناصرها وجميع العناصر الموجودة في المجموعة <code>other</code>.
 +
|تؤدي الدالة <code>[[Python/set/intersection update|intersection_update()‎]]</code> الوظيفة ذاتها.
 +
|-
 +
|<code>set -= other</code>
 +
|يحدّث هذا العامل المجموعة <code>set</code> بحذف العناصر الموجودة في المجموعة <code>other</code>.
 +
|تؤدي الدالة <code>[[Python/set/difference update|difference_update()‎]]</code> الوظيفة ذاتها.
 +
|-
 +
|<code>set ^= other</code>
 +
|يحدّث هذا العامل المجموعة <code>set</code>بالإبقاء على العناصر الموجودة في إحدى المجموعتين ولكن ليس في كليهما.
 +
|تؤدي الدالة <code>[[Python/set/symmetric difference update|symmetric_difference_update()‎]]</code> الوظيفة ذاتها.
 +
|}
 +
 +
== مصادر ==
 +
* [https://docs.python.org/3/library/stdtypes.html#set قسم set في صفحة Types في توثيق بايثون الرسمي.]
 +
[[تصنيف:Python]]
 +
[[تصنيف:Python Operations]]

مراجعة 23:12، 21 مايو 2018

تقدّم بايثون مجموعة من العمليات الخاصة بالمجموعات والمجموعات الجامدة.

العمليات المشتركة بين المجموعات والمجموعات الجامدة

تدعم المجموعات والمجموعات الجامدة في بايثون العمليات الموضّحة في الجدول التالي:

العملية الوصف ملاحظات
len(s)‎ تعيد الدالة عدد العناصر الموجودة في المجموعة، أو ما يعرف في الرياضيات بالمصطلح cardinality.
x in s يتحقق هذا العامل من أن العنصر x ينتمي إلى المجموعة s.
x not in s يتحقق هذا العامل من أن العنصر x لا ينتمي إلى المجموعة s.
set <= other يتحقّق هذا العامل ممّا إذا كان كل عنصر في المجموعة set موجودًا في المجموعة other.

أي يتحقّق من كون المجموعة set مجموعة جزئية subset للمجموعة other.

تؤدي الدالة issubset()‎ الوظيفة نفسها.
set < other يتحقّق هذا العامل ممّا إذا كانت المجموعة setمجموعة جزئية فعلية (proper subset) للمجموعة other.

يعادل هذا العامل العبارة: set <= other and set != other.

set >= other يتحقّق هذا العامل ممّا إذا كان كل عنصر في المجموعة other موجودًا في المجموعة set.

أي يتحقّق من كون المجموعة set مجموعة فائقة superset للمجموعة other.

تؤدي الدالة issuperset()‎ الوظيفة نفسها.
set > other يتحقّق هذا العامل ممّا إذا كانت المجموعة setمجموعة فائقة فعلية (proper superset) للمجموعة other.

يعادل هذا العامل العبارة: set >= other and set != other.

set | other يعيد هذا العامل مجموعة جديدة تضمّ عناصر كلا المجموعتين set و other.

أي يعيد المجموعة الناتجة عن اتحاد union المجموعتين.

تؤدي الدالة union()‎ الوظيفة ذاتها.
set & other يعيد هذا العامل مجموعة جديدة تضمّ العناصر المشتركة بين المجموعتين set و other.

أي يعيد المجموعة الناتجة عن تقاطع intersection المجموعتين.

تؤدي الدالة intersection()‎ الوظيفة ذاتها.
set - other يعيد هذا العامل مجموعة جديدة تضمّ العناصر الموجودة في المجموعة set وغير الموجودة في المجموعة other.

أي يعيد المجموعة الناتجة عن الاختلاف difference بين المجموعتين.

تؤدي الدالة difference()‎ الوظيفة ذاتها.
set ^ other يعيد هذا العامل مجموعة جديدة تضمّ العناصر الموجودة في المجموعة set أو المجموعة other ولكن ليس في كليهما.

أي يعيد المجموعة الناتجة عن الاختلاف المتناظر symmetric difference بين المجموعتين.

تؤدي الدالة symmetric_difference()‎ الوظيفة ذاتها.

ملاحظة: تتطلب العوامل المذكورة في الجدول السابق أن تكون معاملاتها من المجموعات حصرًا، أما الدوال المناظرة لهذه العوامل فيمكن أن تتقبّل أي كائن قابل للتكرار iterable كمعامل.

العمليات الخاصة بالمجموعات

نظرًا لكون المجموعات كائنات قابلة للتعديل بخلاف المجموعات الجامدة، فإنّ الأولى تدعم مجموعة من العمليات الخاصة الموضّحة في الجدول التالي:

العملية الوصف ملاحظات
set |= other يحدّث هذا العامل المجموعة set بإضافة عناصر المجموعة other إليها. تؤدي الدالة update()‎ الوظيفة ذاتها.
set &= other يحدّث هذا العامل المجموعة set بالإبقاء على عناصرها وجميع العناصر الموجودة في المجموعة other. تؤدي الدالة intersection_update()‎ الوظيفة ذاتها.
set -= other يحدّث هذا العامل المجموعة set بحذف العناصر الموجودة في المجموعة other. تؤدي الدالة difference_update()‎ الوظيفة ذاتها.
set ^= other يحدّث هذا العامل المجموعة setبالإبقاء على العناصر الموجودة في إحدى المجموعتين ولكن ليس في كليهما. تؤدي الدالة symmetric_difference_update()‎ الوظيفة ذاتها.

مصادر