Оригінальна публікація: How to Substring a String in Python
Python пропонує багато способів, щоб витягти підрядок з рядка. Часто це називають «slicing».
Ось синтаксис:
string[start:end:step]
В якому:
start
— початковий індекс підрядка. Символ у цьому індексі враховано в підрядку. Якщо start
не враховано, його приймають рівним 0.
end
— кінцевий індекс підрядка. Символ у цьому індексі не враховано в підрядку. Якщо end
не враховано, або задане значення перевищує довжину рядка, його вважають рівним довжині рядка за замовчуванням.
step
— кожен «кроковий» символ після поточного символу враховано. Значення за замовчуванням рівне 1. Якщо step
не враховано, його приймають рівним 1.
Основне використання
string[start:end]
: отримати всі символи від start
до end
- 1
string[:end]
: отримати всі символи від початку рядка до end
- 1
string[start:]
: отримати всі символи від start
до кінця рядка
string[start:end:step]
: отримати всі символи від start
до end
- 1, не враховуючи кожен символ step
Приклади
1. Отримайте перші 5 символів рядка
string = "freeCodeCamp"
print(string[0:5])
Вивід:
> freeC
Зауважте, що print(string[:5])
повертає такий самий результат, що й print(string[0:5])
2. Отримайте підрядок з 4 символів, починаючи з третього символу рядка
string = "freeCodeCamp"
print(string[2:6])
Вивід:
> eeCo
3. Отримайте останній символ рядка
string = "freeCodeCamp"
print(string[-1])
Вивід:
> p
Зауважте, що індекси start
або end
можуть бути від’ємними числами. Від’ємний індекс означає, що ви починаєте рахувати з кінця, а не з початку (справа наліво).
Індекс -1 представляє останній символ рядка, -2 представляє другий з кінця і так далі.
4. Отримайте 5 останніх символів рядка
string = "freeCodeCamp"
print(string[-5:])
Вивід:
> eCamp
5. Отримайте підрядок, який містить всі символи, окрім першого та останніх 4
string = "freeCodeCamp"
print(string[1:-4])
Вивід:
> reeCode
6. Отримайте кожен другий символ рядка
string = "freeCodeCamp"
print(string[::2])
Вивід:
> feCdCm