رشته (str)

اصلاح شده

2026-07-25

تفاوت رشته و لیست

  • رشته = دنباله‌ای از کاراکترها، ولی رشته ≠ لیست کاراکترها
  • تبدیل رشته به لیست کاراکترها: list("spam") = ['s','p','a','m']

تبدیل رشته ↔︎ لیست کلمات

متد کار مثال
.split() رشته را بر اساس space به لیست کلمات تبدیل می‌کنه 'pining for the fjords'.split() = ['pining','for','the','fjords']
.split('-') جداکننده دلخواه 'spam-spam-spam'.split('-')
'-'.join(list) لیست را با جداکننده دلخواه به رشته تبدیل می‌کنه '-'.join(['pining','for','the','fjords'])

طول و اندیس

  • len() : تعداد کاراکترهای رشته
  • اندیس از صفر شروع می‌شه → آخرین کاراکتر = s[len(s)-1]
  • برش: fruit[:3] = سه کاراکتر اول

نکته مهم: رشته‌ها Immutable هستن

  • نمی‌شه یک کاراکتر رو مستقیم عوض کرد
  • greeting[0] = 'J' → خطا: TypeError: 'str' object does not support item assignment

عملگر in

  • بررسی وجود زیررشته: 'a' in 'banana' = True
  • مقایسه الفبایی با < و > : 'a' < 'b' = True

کشف متدها

  • dir(obj) : لیست همه‌ی متدهای یک شیء
  • type(obj) : تشخیص نوع شیء

پیدا کردن موقعیت

  • word.find('a') : اندیس اولین وقوع کاراکتر/زیررشته

متدهای مفید دیگر (برای تمرین)

  • strip()startswith()lower()

قالب‌بندی رشته — عملگر %

فرمت کاربرد
%d عدد صحیح (digit)
%g عدد اعشاری (ممیز شناور)
%s رشته
  • مثال: '%d camels' % camels
  • چند مقداره: 'In %d years I have spotted %g %s.' % (3, 0.1, 'camels')

قالب‌بندی مدرن — f-string

  • سینتکس: f"..."
  • مثال: f"Mr {name} is {age} years old."
  • روش پیشنهادی و رایج‌تر در نسخه‌های جدید پایتون

تمرین