در Python رشتهها (Strings) immutable هستند؛ یعنی نمیتوانید کاراکترهای یک رشته را مستقیماً تغییر دهید.
اما میتوانید با ساخت رشتهٔ جدید رشتهٔ قدیمی را به شکل دلخواه «ویرایش» کنید.
🔹 1️⃣ جایگزینی حروف (Replace)
txt = "I like Java"
new_txt = txt.replace("Java", "Python")
print(new_txt) # I like Python
-
replace(قدیم, جدید, تعداد)
-
آرگومان سوم (اختیاری) تعداد جایگزینی است.
🔹 2️⃣ تغییر حروف به کوچک یا بزرگ
txt = "Hello World"
print(txt.upper()) # HELLO WORLD
print(txt.lower()) # hello world
🔹 3️⃣ حذف فاصلههای اضافه
msg = " Python "
print(msg.strip()) # "Python" (حذف فاصلههای ابتدا و انتها)
print(msg.lstrip()) # حذف فاصلههای سمت چپ
print(msg.rstrip()) # حذف فاصلههای سمت راست
🔹 4️⃣ جایگزینی چندگانه با متدهای دیگر
txt = "apple, banana, cherry"
print(txt.replace("a", "@")) # همه a ها → @
print(txt.replace("a", "@", 2)) # فقط 2 جای اول
🔹 5️⃣ تقسیم و ترکیب دوباره
گاهی برای تغییرات پیچیده، رشته را تکهتکه کرده و دوباره میسازیم:
txt = "I like bananas"
parts = txt.split() # ['I','like','bananas']
parts[2] = "apples" # لیست را تغییر میدهیم
new_txt = " ".join(parts) # 'I like apples'
print(new_txt)
🔹 6️⃣ تغییر حروف ابتدای کلمات
name = "hello python"
print(name.title()) # Hello Python
print(name.capitalize()) # Hello python
🔹 7️⃣ قالببندی (Formatting)
برای ساخت رشتهٔ جدید با مقادیر دلخواه:
lang = "Python"
ver = 3
print(f"I love {lang} {ver}") # f-string
print("I love {} {}".format(lang, ver)) # format()
✅ نکات مهم
-
رشتهٔ اصلی تغییر نمیکند؛ هر متد رشتهٔ جدیدی برمیگرداند.
-
برای تغییر یک کاراکتر خاص باید:
-
رشته را به لیست کاراکترها تبدیل کنید.
-
تغییر دهید.
-
دوباره با
"".()join
به رشته برگردانید.
-
s = "cat"
lst = list(s)
lst[0] = "r"
s = "".join(lst)
print(s) # rat
💡 خلاصه:
-
رشتهها در پایتون قابل تغییر مستقیم نیستند.
-
برای «ویرایش» باید یک رشتهٔ جدید بسازید با کمک متدهایی مثل
replace
,upper
,lower
,strip
,split
,join
و قالببندی (f-string
/format
).