Adam Ebrahim نشر 3 يونيو 2021 أرسل تقرير مشاركة نشر 3 يونيو 2021 أريد أن أقوم بعمل قاموس يحتوي على بعض العناصر كالتالي: {2:True, 1:False, 4:None, 3:”Hi”} ومن المفترض أن يتم تحويله إلى التالي: {1:False, 2:True, 3:”Hi”, 4:None} حاولت البحث عن حل لهذه المشكلة أكثر من مرة ولكن كل الحلول التي وجدها تستخدم الدالة sorted التي تقوم بإعادة tuple وليس قاموس dictionary اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
1 محمد أبو عواد نشر 3 يونيو 2021 أرسل تقرير مشاركة نشر 3 يونيو 2021 بداية نقوم بانشاء قاموس ليكن اسمه D1 D1 = {2:3, 1:89, 4:5, 3:0} ثم نقوم بانشاء قاموس فارغ sort_dic = {} ثم نقوم بعمل حلقة تكرار على القاموس الأول وهو مرتب بناء على ال key, وبداخل الحلقة نقوم بعمل update للقاموس الفارغ بتعديل قيمه كالتالي for i in sorted(D1): sort_dic.update({i:D1[i]}) لو حاولنا طباعة القاموس بعد الترتيب سوف يكون الشكل كالتالي print(sort_dic) #{1: 89, 2: 3, 3: 0, 4: 5} 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
0 سمير عبود نشر 3 يونيو 2021 أرسل تقرير مشاركة نشر 3 يونيو 2021 بإمكانك إستخدام الدالة dict مع الدالة sorted للوصول إلى ما تريد: d = {2:True, 1:False, 4:None, 3:"Hi"} sortedD = dict(sorted(d.items())) print(sortedD) # {1: False, 2: True, 3: 'Hi', 4: None} 2 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
0 سامح أشرف نشر 4 يونيو 2021 أرسل تقرير مشاركة نشر 4 يونيو 2021 يمكنك أن تستعمل الكائن OrderedDict الموجود في مكتبة collections حيث يقوم بترتيب كل عناصر القاموس بالشكل التالي: >>> import collections >>> x = {2:True, 1:False, 4:None, 3:"Hi"} >>> sortedX = collections.OrderedDict(sorted(d.items())) >>> sortedX OrderedDict([(1, False), (2, True), (3, 'Hi'), (4, None)]) >>> sortedX[1] False >>> 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
Adam Ebrahim
أريد أن أقوم بعمل قاموس يحتوي على بعض العناصر كالتالي:
ومن المفترض أن يتم تحويله إلى التالي:
حاولت البحث عن حل لهذه المشكلة أكثر من مرة ولكن كل الحلول التي وجدها تستخدم الدالة sorted التي تقوم بإعادة tuple وليس قاموس dictionary
رابط هذا التعليق
شارك على الشبكات الإجتماعية
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.