المبرمج العربي نشر 26 يناير 2016 أرسل تقرير نشر 26 يناير 2016 أريد إنشاء Set تتكون من مجموعة من Set لكن كلما استخدم دالة add لفعل ذلك أحصل على خطأ من نوع:TypeError: unhashable type: 'set' فما سبب هذه المشكلة؟ اقتباس
0 هشام رزق الله نشر 26 يناير 2016 أرسل تقرير نشر 26 يناير 2016 المشكلة أنك استخدمت دالة add ولكن في بايثون تعتبر كائنات set الداخلية قابلة للتغيير (mutable)، ولحل هذه المشكلة أنصحك باستخدام دالة frozenset للـ sets الداخلية.ولفعل ذلك، لنفترض أن لديك القوائم التالية وتريد تحويلها إلى set من مجموعة sets:tab = [[5, 4, 5], [1, 2], [], [1, 9, 5], [1, 2, 3, 4]] فيمكنك تحويلها بكل سهولة عن طريق استخدام هذا السطر:tab1 = set(frozenset(i) for i in tab) اقتباس
السؤال
المبرمج العربي
أريد إنشاء Set تتكون من مجموعة من Set لكن كلما استخدم دالة add لفعل ذلك أحصل على خطأ من نوع:
فما سبب هذه المشكلة؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.