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

পাইথন: ডিকশনারির লিস্ট থেকে ভ্যালু যোগফল K-র চেয়ে বড় olan ডিকশনারি ফিল্টার করা

ডিকশনারির একটি লিস্ট থেকে যেসব ডিকশনারির সব ভ্যালুর যোগফল নির্দিষ্ট K-র চেয়ে বড়, সেগুলো ফিল্টার করার জন্য লুপ এবং কন্ডিশনাল চেক ব্যবহার করা হয়।

উদাহরণ


my_list = [
    {"Python": 14, "is": 18, "fun": 19},
    {"Python": 12, "is": 4, "fun": 16},
    {"Python": 13, "is": 17, "fun": 11},
    {"Python": 13, "is": 16, "fun": 13}
]

K = 35
print("ডিকশনারি লিস্ট:", my_list)
print("K =", K)

result = []
for d in my_list:
    total = sum(d.values())
    if total > K:
        result.append(d)

print("যোগফল >", K, "হওয়া ডিকশনারি:")
for d in result:
    print(f"  {d} → যোগফল: {sum(d.values())}")

আউটপুট


ডিকশনারি লিস্ট: [{'Python': 14, 'is': 18, 'fun': 19}, {'Python': 12, 'is': 4, 'fun': 16}, {'Python': 13, 'is': 17, 'fun': 11}, {'Python': 13, 'is': 16, 'fun': 13}]
K = 35
যোগফল > 35 হওয়া ডিকশনারি:
  {'Python': 14, 'is': 18, 'fun': 19} → যোগফল: 51
  {'Python': 13, 'is': 17, 'fun': 11} → যোগফল: 41
  {'Python': 13, 'is': 16, 'fun': 13} → যোগফল: 42

লিস্ট কম্প্রিহেনশন দিয়ে সংক্ষিপ্ত


result = [d for d in my_list if sum(d.values()) > K]

বিকল্প: নির্দিষ্ট কিগুলোর যোগফল


# শুধু 'Python' এবং 'fun' কির ভ্যালু যোগ
keys_of_interest = ['Python', 'fun']
result = [d for d in my_list if sum(d.get(k, 0) for k in keys_of_interest) > K]

Pandas-এ একই কাজ


import pandas as pd
df = pd.DataFrame(my_list)
df['total'] = df.sum(axis=1)
filtered = df[df['total'] > K].drop('total', axis=1).to_dict('records')
  1. পাইথন - লিস্টে K-র চেয়ে বড় মানের সংখ্যা গণনা

  2. পাইথনে K-র চেয়ে বড় নম্বরগুলোর ইন্ডেক্স বের করা

  3. পাইথনে Two Sum Less Than K সমস্যা সমাধান

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