কম্পিউটার টিউটোরিয়াল

পাইথনে ডিকশনারি থেকে ডুপ্লিকেট ভ্যালু वाले কীগুলো বের করুন


সমস্যা বিবরণ

ডিকশনারিতে কীগুলো ইউনিক হয় কিন্তু ভ্যালুগুলো ডুপ্লিকেট হতে পারে। ডুপ্লিকেট ভ্যালু वाले কীগুলো গ্রুপ করে বের করতে হবে।

পদ্ধতি ১: কী-ভ্যালু এক্সচেঞ্জ করে গ্রুপিং

নতুন ডিকশনারি বানান যেখানে ভ্যালু কী, এবং কীগুলো লিস্ট হিসেবে ভ্যালু।

dictA = {'Sun': 5, 'Mon': 3, 'Tue': 5, 'Wed': 3}
k_v_exchanged = {}
for key, value in dictA.items():
    if value not in k_v_exchanged:
        k_v_exchanged[value] = [key]
    else:
        k_v_exchanged[value].append(key)
print("New Dictionary:", k_v_exchanged)  # {5: ['Sun', 'Tue'], 3: ['Mon', 'Wed']}

পদ্ধতি ২: set() এবং setdefault() ব্যবহার

setdefault দিয়ে সেটে কী যোগ করুন, পরে ফিল্টার করে যেগুলোর লেন্থ > ১।

dictA = {'Sun': 5, 'Mon': 3, 'Tue': 5, 'Wed': 4}
dictB = {}
for key, value in dictA.items():
    dictB.setdefault(value, set()).add(key)
res = filter(lambda x: len(x) > 1, dictB.values())
print("Duplicate value keys:", list(res))  # [{'Tue', 'Sun'}]
  1. পাইথন ডিকশনারিতে নন-জিরো ভ্যালুর গড় বের করা

  2. পাইথন ডিকশনারির ভ্যালুগুলোর যোগফল (Sum) বের করা

  3. পাইথন ডিকশনারি কী/ভ্যালু লোয়ারকেস (Lowercase) কনভার্ট করা

  4. Python-এ ডুপ্লিকেট কী সহ ডিকশনারি তৈরি করা