رشته‌ها در پایتون

تعریف رشته، ایندکس‌گذاری، برش (slicing) و ویژگی‌های رشته‌ها در پایتون

رشته چیست؟

رشته (String) دنباله‌ای از کاراکترها است که برای ذخیره متن استفاده می‌شود. در پایتون رشته با علامت نقل‌قول مشخص می‌شود.

تعریف رشته

می‌توانید رشته را با سه روش تعریف کنید:

# تک نقل‌قول
s1 = 'سلام'

# دو نقل‌قول
s2 = "دنیا"

# سه نقل‌قول (چند خطی)
s3 = """این یک
رشته چند خطی
است"""

نقل‌قول داخل رشته

# استفاده از نقل‌قول متفاوت
s1 = "او گفت 'سلام'"
s2 = 'او گفت "سلام"'

# استفاده از بک‌اسلش
s3 = "او گفت \"سلام\""

طول رشته

با تابع len() طول رشته را می‌گیرید:

name = "پایتون"
print(len(name))  # 6

رشته به‌عنوان دنباله

رشته یک دنباله از کاراکترهاست. هر کاراکتر یک ایندکس (شماره) دارد که از صفر شروع می‌شود:

     P   y   t   h   o   n
     0   1   2   3   4   5   ← ایندکس مثبت
    -6  -5  -4  -3  -2  -1   ← ایندکس منفی

دسترسی به کاراکترها

s = "Python"

print(s[0])   # P (اولین کاراکتر)
print(s[1])   # y
print(s[5])   # n (آخرین کاراکتر)

# ایندکس منفی (از آخر)
print(s[-1])  # n (آخرین)
print(s[-2])  # o

برش رشته (Slicing)

می‌توانید بخشی از رشته را با سینتکس [start:stop:step] ببرید:

s = "Python Programming"

# از ایندکس ۰ تا ۶ (۷ شامل نمی‌شود)
print(s[0:6])    # Python

# از ابتدا تا ایندکس ۶
print(s[:6])     # Python

# از ایندکس ۷ تا انتها
print(s[7:])     # Programming

# کل رشته
print(s[:])      # Python Programming

# با گام ۲ (یک در میان)
print(s[::2])    # PtoPormig

# برعکس کردن رشته!
print(s[::-1])   # gnimmargorP nohtyP
سینتکس slicing: [شروع:پایان:گام]. شروع شامل است، پایان شامل نیست. اگر شروع را ننویسید، از ابتدا؛ اگر پایان را ننویسید، تا انتها.

رشته‌ها تغییرناپذیرند!

در پایتون نمی‌توانید یک کاراکتر از رشته را مستقیماً تغییر دهید:

s = "Python"
# s[0] = "J"  # ❌ خطا! رشته تغییرناپذیر است

برای تغییر، باید رشته جدید بسازید:

s = "Python"
new_s = "J" + s[1:]  # Jython
print(new_s)

الحاق رشته‌ها

با عملگر + رشته‌ها را به هم بچسبانید:

first = "علی"
last = "رضایی"
full = first + " " + last
print(full)  # علی رضایی

تکرار رشته

با عملگر * رشته را تکرار کنید:

print("آ" * 5)      # آآآآآ
print("=" * 30)    # ==============================

بررسی عضویت

با in و not in می‌توانید بررسی کنید آیا یک زیررشته در رشته وجود دارد:

s = "به پایتون خوش آمدید"
print("پایتون" in s)      # True
print("جاوا" not in s)    # True

پیمایش رشته

# با حلقه for
for char in "Python":
    print(char)

# با ایندکس
for i in range(len("Python")):
    print(i, "Python"[i])

کاراکترهای فرار

کدمعنی
\nخط جدید
\tتب
\\بک‌اسلش
\'تک نقل‌قول
\"دو نقل‌قول

رشته خام (Raw String)

با قرار دادن r قبل از رشته، کاراکترهای فرار نادیده گرفته می‌شوند:

# عادی
print("C:\\Users\\name")  # C:\Users\name

# خام
print(r"C:\Users\name")  # C:\Users\name

خلاصه

عملیاتسینتکس
طولlen(s)
دسترسیs[i]
برشs[start:stop:step]
الحاقs1 + s2
تکرارs * n
عضویتx in s

این مبحث بخشی از دوره آموزش کامل پایتون است.

ابزارهای مرتبط