frozenset() إنشاء مجموعة غير قابلة للتغيير
آخر تحديث: 2026-09-22
frozenset() إنشاء مجموعة غير قابلة للتغيير
frozenset() تُرجع مجموعة غير قابلة للتغيير؛ يجب أن تكون العناصر قابلة للتجزئة، وهي نفسها قابلة للتجزئة (يمكن استخدامها كمفتاح dict).
| التصنيف | الدوال المدمجة |
|---|---|
| النوع | دالة مدمجة |
| إصدار بايثون | all |
📝 الصياغة
frozenset([iterable])
⚙️ المعاملات
| iterable اختياري | An iterable; omitted yields an empty frozenset.(القيمة الافتراضية:None) |
|---|
القيمة المُعادة:frozenset. An immutable, hashable set.
💥 الاستثناءات
TypeError— Raised when an element of iterable is unhashable.
▶ مثال
عدّل الكود واضغط تشغيل لرؤية النتيجة في لوحة المخرجات:
المخرجات:
frozenset({1, 2, 3})
{frozenset({1, 2, 3}): 'value'}
🏷️ دوال مدمجة ذات صلة
💡 حالات ذات صلة
المزيد من الحالات قادم قريباً — تابعونا.
❓ أسئلة شائعة
Qما الفرق بين frozenset و set؟
Aالفرق الجوهري الوحيد أن frozenset غير قابل للتغيير (لا يمكن add/remove/update)، وبالتالي قابل للهاش، فيصلح مفتاحًا لقاموس أو عنصرًا داخل set آخر.
Qلماذا {frozenset([1,2]): 'x'} قانوني بينما {set([1,2]): 'x'} يسبب خطأ؟
Aيجب أن يكون مفتاح القاموس قابلًا للهاش: frozenset غير قابل للتغيير لذا قابل للهاش، بينما set قابل للتغيير وغير قابل للهاش، فيُثار TypeError: unhashable type: 'set'.
Qهل يزيل frozenset التكرارات؟
Aنعم، مثل set: frozenset([1, 2, 2, 3]) ينتج frozenset({1, 2, 3}).
Qهل يمكن تحويل frozenset إلى set؟
Aنعم، set(fs) يُرجع نسخة قابلة للتغيير بنفس العناصر؛ وكذلك يمكن تحويل set إلى frozenset.