Python - String Exercises

در این بخش چند تمرین کاربردی برای رشته‌ها (Strings) در Python آماده شده است.
هر تمرین با توضیح هدف، نمونه ورودی/خروجی و گاهی راهنمایی کوتاه همراه است.

🟠 1️⃣ شمارش حروف کوچک، بزرگ و عدد

هدف: از کاربر یک رشته بگیرید و تعداد

  • حروف بزرگ

  • حروف کوچک

  • ارقام
    را محاسبه کنید.

ورودی نمونه:
"Hello World 2025"

خروجی نمونه:

Uppercase: 2 Lowercase: 8 Digits: 4

🟠 2️⃣ حذف فاصله‌های اضافه

هدف: تمام فاصله‌های اضافی (ابتدا، انتها و فاصله‌های دوگانه وسط متن) را حذف کنید.

ورودی: " Python is fun "

خروجی: "Python is fun"

🟠 3️⃣ بررسی پالیندروم (Palindrome)

هدف: یک رشته را از کاربر بگیرید و بررسی کنید که از هر دو طرف یکسان خوانده می‌شود یا خیر.

ورودی: "Madam"

خروجی:

Yes, it's a palindrome.

راهنما: از ()lower و slicing با [::-1] استفاده کنید.

🟠 4️⃣ بیشترین حرف تکراری

هدف: پیدا کردن کاراکتری که بیشترین تکرار را در رشته دارد.

ورودی: "programming"

خروجی:

Most frequent character: g Count: 2

🟠 5️⃣ حذف حروف تکراری

هدف: کاربر رشته‌ای وارد کند و شما رشته‌ای بدون حروف تکراری برگردانید (ترتیب اولین وقوع حفظ شود).

ورودی: "banana"

خروجی: "ban"

🟠 6️⃣ شمارش کلمات

هدف: تعداد کلمات موجود در جمله را محاسبه کنید.

ورودی: "Python is super easy"

خروجی: 4

راهنما: از ()split استفاده کنید.

🟠 7️⃣ جایگزینی حروف صدادار با *

هدف: تمام حروف صدادار انگلیسی (a, e, i, o, u) را با * جایگزین کنید.

ورودی: "Hello World"

خروجی: "H*ll* W*rld"

🟠 8️⃣ برعکس کردن هر کلمه

هدف: تمام کلمات جمله را معکوس کنید ولی ترتیب کلمات حفظ شود.

ورودی: "Python is fun"

خروجی: "nohtyP si nuf"

🟠 9️⃣ شمارش تعداد جمله‌ها

هدف: تعداد جملات را در یک پاراگراف با توجه به نقطه (.) محاسبه کنید.

ورودی: "Hi. How are you? I am fine."

خروجی: 2 (فقط جملات با نقطه)

🟠 🔟 پیدا کردن طولانی‌ترین کلمه

هدف: بلندترین کلمه‌ی موجود در رشته را پیدا کنید.

ورودی: "I love programming in Python"

خروجی: "programming"

✅ نکات پیشنهادی برای تمرین

  • از متدهای split()، strip()، replace()، count()، find() زیاد استفاده کنید.

  • از حلقه‌ها و list comprehension برای پردازش هر کاراکتر کمک بگیرید.

  • برای تمرین بیشتر، برنامه‌ها را طوری بنویسید که رشته را از کاربر با ()input دریافت کنند.

💡 پیشنهاد:
هر تمرین را ابتدا با توابع ساده بنویسید و سپس سعی کنید آن را به صورت تابع مستقل (function) و حتی با تست واحد (unittest) پیاده‌سازی کنید تا مهارت کار با رشته‌ها در پایتون کاملاً تقویت شود.