Обробка рядків (strings)
Як працювати з текстом: індекси, зрізи, методи рядків, пошук підрядків, split/join, і красивий вивід.
1 Рядок — це послідовність символів
У Python рядок (str) — це текст, який складається з символів. Його можна перебирати як список:
по одному символу.
word = "Python"
print(len(word)) # 6
print(word[0]) # P
print(word[-1]) # n
for ch in word:
print(ch)
Увага
Якщо ти звернешся до символа, якого не існує (наприклад word[99]), буде помилка IndexError.
2 Зрізи (slices)
Зріз дозволяє взяти частину рядка: text[start:end:step].
приклади
s = "programming"
print(s[0:7]) # program
print(s[:3]) # pro
print(s[3:]) # gramming
print(s[::2]) # pormig
print(s[::-1]) # gnimmargorp
правило
end не включається. Тобто s[0:7] бере символи з індексами 0..6.
s[-3:]
3 Важливо: рядки не змінюються
Рядки в Python — незмінні (immutable). Це означає: ти не можеш змінити один символ “всередині” рядка. Але можеш створити новий рядок.
name = "maksym"
# name[0] = "M" # так не можна
name2 = "M" + name[1:]
print(name2) # Maksym
4 Корисні методи рядків
Методи — це готові “дії”, які вміє робити рядок.
Регістр і пробіли
text = " HeLLo "
print(text.lower()) # " hello "
print(text.upper()) # " HELLO "
print(text.strip()) # "HeLLo"
Заміна
msg = "I like cats"
print(msg.replace("cats", "dogs"))
# I like dogs
Пошук
s = "banana"
print(s.find("na")) # 2
print(s.count("a")) # 3
print("nan" in s) # True
Початок/кінець
file = "photo.png"
print(file.endswith(".png")) # True
print(file.startswith("ph")) # True
in, а для позиції — find().
5 split() і join() — магія зі словами
Дуже часто треба перетворити рядок на список слів або навпаки.
sentence = "I love Python"
words = sentence.split(" ")
print(words) # ['I', 'love', 'Python']
new_sentence = "-".join(words)
print(new_sentence) # I-love-Python
sentence.split() без аргументів — Python сам розіб’є за пробілами (і “з’їсть” зайві).
6 Форматування: f-рядки
Найзручніше вставляти змінні у текст через f-рядки.
name = "Olia"
score = 95
print(f"Учень: {name}, бал: {score}/100")
Міні-чеклист
- Перед лапками ставимо
f - Змінні/вирази пишемо в
{ } - Можна навіть так:
{2 + 2}
Висновок
Рядки — це основа тексту в програмах. Ти навчився брати символи, робити зрізи, змінювати регістр, шукати підрядки, розбивати на слова і збирати назад.