پرسش

چطور می‌تونم تعداد تکرار یک آیتم در لیست رو بشمارم؟

How do I count the occurrences of a list item?

چطور می‌تونم تعداد تکرار یک آیتم خاص رو توی لیست حساب کنم؟

1403/06/02
پاسخ
رضا دولتی عاشق برنامه نویسی و هوش مصنوعی!
بیوگرافی رضا دولتی

برای شمردن تعداد تکرار یک آیتم خاص توی لیست، می‌تونید از چند روش مختلف استفاده کنید. بسته به نیازتون، می‌تونید روش ساده‌تر یا روش پیشرفته‌تر رو انتخاب کنید. اینجا چند تا از بهترین روش‌ها رو براتون توضیح میدم:

  1. روش استفاده از تابع count()

این روش ساده‌ترین راه برای شمردن تعداد تکرار یک آیتم توی لیسته. تابع count() در پایتون این کار رو خیلی راحت انجام میده.

my_list = [1, 2, 3, 4, 1, 2, 1, 5, 1]
count = my_list.count(1)
print(f"The number 1 occurs {count} times in the list.")

توضیح: این روش خیلی ساده و مستقیمه. از تابع count() برای شمردن تعداد تکرار آیتم مورد نظر در لیست استفاده می‌کنیم.

  1. روش استفاده از collections.Counter

این روش زمانی خیلی مفید میشه که بخواید تعداد تکرار همه آیتم‌های لیست رو بدونید.

from collections import Counter
my_list = [1, 2, 3, 4, 1, 2, 1, 5, 1]
counter = Counter(my_list)
print(counter)
# To get the count of a specific item, e.g., 1
print(f"The number 1 occurs {counter[1]} times in the list.")

توضیح: توی این روش از Counter که توی ماژول collections هست استفاده می‌کنیم. Counter یه دیکشنری از آیتم‌ها و تعداد تکرارشون میده که می‌تونید هر کدوم رو جداگانه هم بررسی کنید.

  1. روش استفاده از for loop

این روش برای وقتی مفیده که بخواید شمردن رو به صورت دستی انجام بدید یا مثلاً بخواید یه کار اضافی دیگه هم انجام بدید.

my_list = [1, 2, 3, 4, 1, 2, 1, 5, 1]
count = 0
for item in my_list:
    if item == 1:
        count += 1
print(f"The number 1 occurs {count} times in the list.")

توضیح: این روش دستی‌شماریه که با یه حلقه for آیتم‌های لیست رو مرور می‌کنید و تعداد تکرار مورد نظر رو می‌شمارید.

هر سه روش بالا کاربردی و صحیح هستن و می‌تونید بسته به نیازتون از یکی استفاده کنید. روش اول خیلی ساده و سریع برای مواقعیه که فقط نیاز به شمارش یه آیتم دارید. روش دوم زمانی مفیده که بخواید تعداد تکرار همه آیتم‌ها رو داشته باشید. روش سوم برای حالتیه که بخواید یه کار اضافی توی حین شمردن انجام بدید.

پاسخ: 1403/06/02
آخرین آپدیت: 1403/07/24