نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر

نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
PY

منهج Python

دليل مرجعي شامل

كل اللغات
مدرسة البرمجة/منهج Python/المجموعات الفريدة (Sets)

المجموعات الفريدة (Sets)

sets pythonمجموعات pythonpython setset operations python

الشرح

## Sets في Python

الـ Set هي مجموعة من العناصر **الفريدة** (بدون تكرار) وغير مرتبة.

### خصائص Set: - لا تكرار للعناصر - غير مرتبة (لا يوجد فهرس) - سريعة في البحث والتحقق من الوجود

### إنشاء Set: ```python empty_set = set() # ليس {} (ذلك dict) numbers = {1, 2, 3, 4, 5} unique = set([1, 2, 2, 3, 3]) # {1, 2, 3} - حذف التكرار ```

### عمليات المجموعات: | العملية | الرمز | الدالة | |---|---|---| | الاتحاد | || | union() | | التقاطع | & | intersection() | | الفرق | - | difference() | | الفرق المتماثل | ^ | symmetric_difference() |

الصياغة (Syntax)

syntax
1# إنشاء Set وإزالة التكرار
2nums = {1, 2, 3, 3, 2, 1}
3print(nums) # {1, 2, 3}
4
5# الإضافة والحذف
6nums.add(4)
7nums.remove(2)
8nums.discard(99) # لا خطأ إن لم يوجد
9
10# التحقق
11print(3 in nums) # True

أمثلة عملية

مثال 1: عمليات المجموعات

عمليات المجموعات
1A = {1, 2, 3, 4, 5}
2B = {4, 5, 6, 7, 8}
3
4print("الاتحاد:", A | B) # كل العناصر
5print("التقاطع:", A & B) # العناصر المشتركة
6print("الفرق A-B:", A - B) # في A وليست في B
7print("الفرق B-A:", B - A) # في B وليست في A
8print("الفرق المتماثل:", A ^ B) # في أحدهما لا كليهما

مثال 2: إزالة التكرار من قائمة

إزالة التكرار من قائمة
1# الطريقة الأسرع لإزالة التكرار
2emails = ["a@test.com", "b@test.com", "a@test.com", "c@test.com"]
3unique_emails = list(set(emails))
4print(f"قبل: {len(emails)} بريد")
5print(f"بعد: {len(unique_emails)} بريد فريد")

نصائح احترافية

  • —**نصائح Sets:**
  • —البحث في set أسرع بكثير من البحث في list: `x in my_set` هو O(1)
  • —لإنشاء set فارغ: `set()` لا `{}` (ذلك dict فارغ)
  • —`frozenset` نسخة غير قابلة للتعديل من set
  • —مثالية لإزالة التكرار من القوائم الكبيرة

الدرس السابق

المجموعات غير القابلة للتعديل (Tuples)

الدرس التالي

القواميس والخرائط المفتاحية (Dictionaries)

نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر