آموزش count در پایتون به زبان ساده + مثال عملی و آموزنده
شمارش (عملیات count در پایتون) عملیاتی اساسی در برنامهنویسی است و پایتون نوعی متد داخلی به نام count() ارائه میدهد که به ما امکان خواهد داد بهراحتی وقوع یک عنصر خاص را در یک لیست، رشته پایتون (python string) یا هر مجموعه داده دیگری بشماریم. شمارش در پایتون میتواند در سناریوهای مختلف بسیار مفید باشد، از کارهای ساده مانند یافتن تعداد تکرار یک کاراکتر خاص در یک رشته تا عملیات پیچیدهتر مانند تجزیهوتحلیل مجموعه دادهها یا پردازش مقادیر زیادی متن. در این مقاله، نکات و نکات متد count در پایتون، از جمله سینتکس، مزایا و مثالهای عملی آن بررسی میکنیم تا به شما کمک کند از count() در برنامههای پایتون خود استفاده کنید.
سینتکس متد count در پایتون
متد count در پایتون نوعی تابع (function) داخلی در پایتون است و برای لیستها، رشتهها و مجموعههای تکرارپذیر دیگر در دسترس خواهد بود. سینتکس count() به شرح زیر است:
iterable.count(element)
در سینتکس فوق:
- iterable: این بیانگر مجموعه تکرارپذیر است (مثلاً لیست، رشته) که در آن میخواهیم وقوع عنصر را بشماریم.
- element: این عنصری است که میخواهیم رخدادهای آن را در مجموعه متغیرهای قابلشمارش (count variable python)، شمارش کنیم.
مزایا و کاربردهای count در پایتون
تابع count() در پایتون (count function python) چندین مزیت و موارد استفاده دارد که موارد زیر از مهمترین آنها محسوب میشوند.
- سادگی و کارایی: متد count() روشی ساده و کارآمد برای شمارش رخدادهای عنصری خاص در یک مجموعه داده ارائه میکند. این متد مهم ما را از نوشتن حلقههای پیچیده نجات میدهد و مقدار کد مورد نیاز برای شمارش رخدادها را کاهش خواهد داد و در کنار آن کد ما را مختصرتر و خوانا میکند.
- تطبیقپذیری: متد count در پایتون را میتوان با عناصر تکرارپذیر مختلف از جمله لیستها، رشتهها، تاپلها و موارد دیگر استفاده کرد. این باعث میشود که ابزاری همهکاره برای شمارش رخدادها در ساختارهای داده مختلف باشد.
- پیچیدگی زمانی: متد count در Python دارای پیچیدگی زمانی O(n) است که n طول تکرارپذیر است. این بدان یعنی که میتواند به سرعت وقوع یک عنصر را حتی در مجموعه دادههای بزرگ بشمارد و آن را برای برنامههای کاربردی حیاتی مناسب میکند.
- مدیریت خطا: متد count در زبان پایتون بسیار قدرتمند است و مدیریت خطای داخلی را ارائه میدهد. به طور خودکار مواردی را که عنصر در تکرار یافت نمیشود، کنترل میکند و از خطاهای احتمالی در کد ما جلوگیری میکند.
پیشنهاد مطالعه: کتابخانه های پایتون + مزایا، معایب و کاربرد هرکدام
مثال های عملی count در پایتون
سناریوی اول: شمارش تعداد تکرارها در لیست:
فرض کنید لیستی از اعداد داریم و میخواهیم وقوع یک عدد خاص را بشماریم. میتوانیم از متد count در پایتون مانند قطعه کد زیر برای این هدف استفاده کنیم:
numbers = [1, 2, 3, 4, 2, 5, 2, 6, 2, 7, 8, 9, 2]
element = 2
count = numbers.count(element)
print(f"The element {element} occurs {count} times in the list.")
خروجی این مثال به صورت زیر است:
سناریوی دوم: شمارش تعداد تکرار کاراکتری خاص در یک رشته:
همچنین میتوانیم از متد count() برای شمارش وقوع کاراکتری خاص یا زیر رشته خاص در یک رشته استفاده کنیم. به مثال زیر توجه کنید:
text = "سلام. به وبسایت مکتب خونه خوش آمدید. مکتب خونه یکی از بزرگترین وبسایت های آموزشی در زبان فارسی است و هم اکنون زدیک به دو دهه است که در این زمینه فعالیت مستمر دارد."
char = "ک"
count = text.count(char)
print(f"The character '{char}' occurs {count} times in the string.")
خروجی این مثال به صورت زیر است:
خروجی نشان میدهد که از کاراکتر خاص مثلا «ک» در متن، ٦ بار استفاده شده است.
سناریوی سوم: شمارش تعداد کلمات در یک متن:
متد count در پایتون زمانی میتواند مفید باشد که بخواهیم تعداد کلمات خاصی را در یک متن بشماریم. در اینجا مثالی آورده شده است که تعداد دفعات کلمه “مکتب خونه” را در یک متن محاسبه میکند:
text = "سلام. به وبسایت مکتب خونه خوش آمدید. مکتب خونه یکی از بزرگترین وبسایت های آموزشی در زبان فارسی است و هم اکنون زدیک به دو دهه است که در این زمینه فعالیت مستمر دارد."
word = "مکتب خونه"
count = text.count(word)
print(f"The word '{word}' occurs {count} times in the text.")
خروجی قطعه کد فوق به صورت تصویر است:
سناریوی چهارم: شمارش رخدادها در لیستهای تودرتو:
متد count() همچنین میتواند برای شمارش رخدادها در لیستهای تودرتو استفاده شود. در اینجا یک مثال آورده شده است که در آن ما فهرستی از لیستها را داریم که نشان دهنده شبکهای از اعداد است و میخواهیم وقوع یک عدد خاص را در کل شبکه بشماریم:
grid = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [1, 2, 3]]
element = 2
count = sum(sublist.count(element) for sublist in grid)
print(f"The element {element} occurs {count} times in the grid.")
خروجی این به صورت تصویر زیر است:
مثالی عملی و پیچیده برای count در پایتون
فرض کنید یک سند متنی بزرگ مانند یک کتاب یا مقاله داریم و می خواهیم فرکانس های کلمه را در سند تجزیهوتحلیل کنیم. برای رسیدن به این هدف میتوانیم از متد count در پایتون استفاده کنینم. در اینجا ما یک سند متنی فرضه دانلود کردیم و میخواهیم که با متد count آن را تجزیه و تحلیل کنیم.
در زیر تصویری از سند متنی ما آورده شده است:
حال قطعه کد ما برای انجام این کار به صورت زیر است:
# Load the text document
with open("document.txt", "r", encoding="cp1252", errors="ignore") as file:
text = file.read()
# Clean the text by removing punctuation and converting to lowercase
import string
text = text.lower().translate(str.maketrans("", "", string.punctuation))
# Split the text into words
words = text.split()
# Create a dictionary to store word frequencies
word_freq = {}
# Iterate through the words and count their occurrences
for word in words:
if word in word_freq:
word_freq[word] += 1
else:
word_freq[word] = 1
# Sort the words by their frequencies in descending order
sorted_words = sorted(word_freq.items(), key=lambda x: x[1], reverse=True)
# Print the top 10 most frequent words
print("Top 10 Most Frequent Words:")
for word, freq in sorted_words[:10]:
print(f"{word}: {freq} occurrences")
خروجی مثال فوق به صورت زیر است:
توضیح برنامه پایتون (python program) بالا:
- بارگذاری سند متنی: ما با بارگیری سند متنی به عنوان ورودی کاربر (user input) با استفاده از قابلیتهای مدیریت فایل داخلی پایتون شروع میکنیم. فایل “txt” در حالت خواندن با استفاده از تابع “open()” باز میشود و محتویات فایل در متغیر “text” خوانده و ذخیره خواهد شد.
- پاکسازی متن: در مرحله بعد، متن را با حذف علائم نگارشی و تبدیل تمام کاراکترها به حروف کوچک پاکسازی میکنیم. این کار با استفاده از روش “lower()” برای تبدیل متن به حروف کوچک و روش “translate()” با “punctuation” برای حذف تمام علائم نگارشی از متن انجام میشود.
- متن را به کلمات تقسیم میکنیم: ما متن پاکسازی شده را با استفاده از متد “split()” به کلمات تقسیم میکنیم، که متن را در کاراکترهای فضای خالی مانند فاصله و خطوط جدید تقسیم میکند و لیستی از کلمات را برمیگرداند.
- ایجاد دیکشنری برای فرکانسهای کلمات: ما یک دیکشنری خالی به نام “word_freq” برای ذخیره واژه فرکانس ایجاد میکنیم. در این دیکشنری، کلیدها کلمات منحصربهفرد در متن هستند و مقادیر، تعداد دفعات آنها خواهد بود.
- تکرار از طریق کلمات و تعداد رخدادها: از طریق لیست کلمات تکرار انجام میشود و از متد count() (count method) برای شمارش تکرار هر کلمه در لیست استفاده میکنیم. اگر کلمه قبلاً در دیکشنری “word_freq” وجود داشته باشد، تعداد آن را با استراتژی word_freq[word] += 1 افزایش میدهیم. در غیر این صورت، آن را با word_freq[word] = 1 به دیکشنری اضافه خواهیم کرد.
- مرتبسازی کلمات بر اساس فرکانس: ما از تابع “sorted()” با یک تابع کلید سفارشی برای مرتب کردن کلمات در دیکشنری “word_freq” بر اساس فرکانس آنها به ترتیب نزولی استفاده میکنیم. تابع “lambda x: x[1]” مشخص میکند که میخواهیم بر اساس مقادیر (فرکانسها) در دیکشنری پایتون مرتب کرده و “reverse=True” نشان میدهد که میخواهیم به ترتیب نزولی مرتب کنیم.
- چاپ 10 کلمه پرتکرار: در نهایت، با استفاده از یک حلقه که در لیست مرتب شده کلمات و فرکانس آنها تکرار میشود، 10 کلمه پرتکرار و تکرار آنها را چاپ میکنیم. خروجی کلمات و تعداد آنها را به ترتیب نزولی نمایش میدهد و به ما امکان میدهد فرکانس یا تعداد کلمات را در سند متنی تجزیهوتحلیل کنیم.
این مثال تطبیقپذیری و قدرت متد count در پایتون برای تجزیهوتحلیل دادههای متنی و استخراج بینش معنیدار از اسناد بزرگ نشان میدهد. این نشان میدهد که چگونه count() میتواند در یک سناریوی واقعی برای پردازش و تجزیهوتحلیل دادههای متنی به طور مؤثر استفاده شود و آن را به ابزاری ارزشمند در تجزیهوتحلیل دادهها، زبان طبیعی تبدیل میکند.
پیشنهاد مطالعه: پایتون یا جاوا اسکریپت؟ کدام زبان بهتر است؟
سخن پایانی
متد count در پایتون یک ابزار قدرتمند برای شمارش وقوع عناصر در تکرارپذیرها مانند لیستها، رشتهها و موارد دیگر است. این متد مهم سادگی، تطبیقپذیری و کارایی را ارائه میدهد و آن را به ابزاری ارزشمند برای برنامهنویسی پایتون شما تبدیل میکند. در این مقاله، سینتکس، مزایا و مثالهای عملی count() را در پایتون پوشش دادیم و موارد استفاده مختلف آن را به نمایش گذاشتیم. با تسلط بر متد count در زبان پایتون میتوانید به طور موثری رخدادهای خاص را در برنامههای پایتون خود بشمارید و آنها را قوی تر و کارآمدتر کنید.
پیشنهاد مطالعه: آموزش دستورات شرطی در پایتون به زبان ساده
یادگیری پایتون
یادگیری اصولی و حرفهای پایتون مستلزم آموزش دیدن، تمرین کردن و اعتمادبهنفس است. در این میان آموزش اصولی از اهمیت ویژهای برخوردار است، چیزی که دورههای پایتون مکتب خونه تمام ویژگیهای لازم یک آموزش اصولی را دارند.
اگر به فکر یادگیری پایتون هستید، دورههای آموزش پایتون مکتب خونه در این مسیر میتواند کمک حال بسیار مناسبی برای شما باشد. دورههای آموزش پایتون مکتب خونه به وسیله افراد حرفهای پایتون در ایران تهیه و تدوین شدهاند و تمام استاندارهای لازم یک آموزش اصولی را دارند. هماکنون از طریق صفحه آموزش پایتون مکتب خونه میتوانید انواع دورههای آموزش پایتون را از مقدماتی تا پیشرفته برای حوزههای مختلف مشاهده کنید