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

পাইথনে লিস্ট এলিমেন্টের ফ্রিকোয়েন্সি (বারবারতা) গণনা


সমস্যা বিবরণ

একটি লিস্টে প্রতিটি এলিমেন্ট কতবার আসেছে তা গণনা করে ডিকশনারি আকারে রিটার্ন করতে হবে।

উদাহরণ

Input:  ['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B']
Output: {'A': 3, 'B': 3, 'C': 1, 'D': 2}

পদ্ধতি ১: ম্যানুয়াল ডিকশনারি (শেখার জন্য ভালো)

random_list = ['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B']
frequency = {}

for item in random_list:
    if item in frequency:
        frequency[item] += 1
    else:
        frequency[item] = 1

print(frequency)  # {'A': 3, 'B': 3, 'C': 1, 'D': 2}

পদ্ধতি ২: collections.Counter (স্ট্যান্ডার্ড ও দক্ষ)

import collections

random_list = ['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B']
frequency = collections.Counter(random_list)
print(dict(frequency))  # {'A': 3, 'B': 3, 'C': 1, 'D': 2}

Counter এর অতিরিক্ত ফিচার

from collections import Counter

cnt = Counter(['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B'])

print(cnt.most_common(2))      # [('A', 3), ('B', 3)] - টপ ২
print(cnt['A'])                # 3 - ডিকশনারি লাইক অ্যাক্সেস
print(sum(cnt.values()))       # 9 - টোটাল এলিমেন্ট
print(list(cnt.elements()))    # ['A','A','A','B','B','B','C','D','D'] - এক্সপ্যান্ডেড

পদ্ধতি ৩: defaultdict (ক্লিনার কোড)

from collections import defaultdict

random_list = ['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B']
frequency = defaultdict(int)

for item in random_list:
    frequency[item] += 1  # অটোমেটিক ০ থেকে শুরু

print(dict(frequency))

তুলনা

পদ্ধতিকোড লেন্থপারফরম্যান্সএক্সট্রা ফিচার
Manual dictলম্বাবেসলাইননা
Counterসর্বোচ্চ ছোটঅপ্টিমাইজড (C)হ্যাঁ (most_common ইত্যাদি)
defaultdictমidiumদ্রুতসাধারণ ডিক্ট অপারেশন

উপসংহার

  • প্রোডাকশন কোডে **collections.Counter** ব্যবহার করুন — স্ট্যান্ডার্ড, দক্ষ, ফিচার-রিচ
  • শেখার উদ্দেশ্যে ম্যানুয়াল ডিকশনারি বুঝতে পারেন
  • defaultdict জেনারেল পρφপজ ডিকশনারি ডিফল্ট ভ্যালুয়ের জন্য ভালো
  1. পাইথনে লিস্ট অফ টাপলে ফ্রিকোয়েন্সি বের করুন

  2. পাইথনে লিস্টে দেওয়া এলিমেন্টগুলোর ফ্রিকোয়েন্সির যোগফল বের করুন

  3. পাইথনে রেঞ্জের মধ্যে এলিমেন্ট ডিলিট করুন

  4. পাইথনে লিস্টের আকার বের করা