در Python میتوان با استفاده از Slicing (برش)، بخش دلخواهی از یک String را استخراج کرد.
Slicing به ما اجازه میدهد با تعیین start, end و step زیررشتهٔ مورد نظر را جدا کنیم.
🔹 ساختار کلی
string[start:end:step]
-
start : ایندکس شروع (پیشفرض 0)
-
end : ایندکس پایان (خود ایندکس پایان شامل نمیشود)
-
step : گام حرکت (پیشفرض 1)
🔹 مثال ساده
text = "Python"
print(text[0:4]) # 'Pyth' (ایندکس 0 تا 3)
print(text[2:]) # 'thon' (از 2 تا آخر)
print(text[:3]) # 'Pyt' (از اول تا 2)
🔹 گام (Step)
print(text[::2]) # 'Pto' (هر دو کاراکتر یکی)
print(text[1::2]) # 'yhn' (از ایندکس 1، پرش 2 تایی)
🔹 ایندکس منفی
ایندکس منفی از انتهای رشته حساب میشود:
print(text[-1]) # 'n' (آخرین کاراکتر)
print(text[-4:-1]) # 'tho' (از -4 تا -2)
print(text[::-1]) # 'nohtyP' (معکوس کل رشته)
🔹 حذف Start یا End
print(text[:]) # 'Python' (کل رشته)
print(text[:4]) # 'Pyth' (از اول تا 3)
print(text[2:]) # 'thon' (از 2 تا آخر)
🔹 نمونه ترکیبی
msg = "Hello, World!"
print(msg[7:12]) # 'World'
print(msg[::3]) # 'Hl r!'
✅ نکات مهم
-
End شامل نمیشود.
string[0:4]
یعنی کاراکترهای ایندکس 0 تا 3. -
اگر start بزرگتر از end باشد و step مثبت باشد → خروجی رشتهٔ خالی است.
-
اگر step منفی باشد، رشته از راست به چپ خوانده میشود.
-
Slicing رشتهٔ اصلی را تغییر نمیدهد و یک رشتهٔ جدید برمیگرداند (String در پایتون immutable است).
💡 خلاصه:
Slicing در پایتون ابزار قدرتمندی برای گرفتن زیررشتهها، پرش در حروف، و معکوسکردن متن است.
قالب کلی string[start:end:step]
را به خاطر بسپارید تا بتوانید بهراحتی هر بخشی از یک رشته را استخراج کنید.