• 0

كيف أحصل على المفتاح الذي يحتوي على أقل قيمة من قاموس في بايثون؟

إذا كان لدي قاموس في لغة بايثون، فكيف أستطيع الحصول على المفتاح الذي يحتوي على أقل قيمة؟ فهل هنالك دالة معينة أو ما شابه لفعل ذلك؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هنالك طرق مختلفة تُمكنك من الحصول على المفتاح الذي يحتوي على اقل قيمة من قاموس معين، وأسهل هذه الطرق وأكثرها استخداما هي عن طريق استعمال دالة min() ومن ثم تمرير القاموس لها وصيغة المفتاح كما في المثال التالي:

>>> d = {320:1, 321:0, 322:3}
>>> d.items()
[(320, 1), (321, 0), (322, 3)]
>>> # find the minimum by comparing the second element of each tuple
>>> min(d.items(), key=lambda x: x[1])
(321, 0)

ملاحظة: في حالة كان القاموس كبيرا فيمكنك استخدام d.iteritems() فهي تعمل بشكل أفضل مع القواميس الكبيرة.
كما يمكنك اختصار سطر min(d.items(), key=lambda x: x[1]) إلى السطر التالي:

min(d, key=d.get)

فيمكنك تحويل جزء lambda بـ get كما رأينا في المثال السابق.

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن