Рядковий тип даних
Для опрацювання текстових даних у Python існує тип даних str (від англ . string — рядок).
s = ‘це рядок’
Рядок із апострофом слід брати в подвійні лапки, і навпаки:
s1 = "Я, сім'я, Україна"
s2 = 'Фільм "Земля" (реж. О. Довженко)'
Якщо рядок містить як апострофи, так і лапки, перед тими з них, що збігаються
з обмежувачами, ставлять символ «\»:
s3 = "Сім'я дивиться фільм \"Земля\""
Значенням величини типу str є послідовність символів, узята в одинарні або подвійні лапки.
Зверни увагу!
Початок і кінець рядка мають бути в лапках одного виду.
s1 = "Я, сім'я, Україна"
s2 = 'Фільм "Земля" (реж. О. Довженко)'
Якщо рядок містить як апострофи, так і лапки, перед тими з них, що збігаються
з обмежувачами, ставлять символ «\»:
s3 = "Сім'я дивиться фільм \"Земля\""
Величини будь-якого типу можна перетворити на рядок за допомогою функції str() (рис.1).
Рис.1
Коди символів
Всі символи, які доступні комп′ютеру, утворюють так звану таблицю символів. Кожний символ має в таблиці свій номер, який називається його ASCІІ-кодом (американський стандартний код для обміну інформацією). Великі англійські, малі англійські літери та цифри в кодовій таблиці упорядковані, тобто сусідні коди відрізняються на 1.
Можна визначити код буд-якого символа за допомогою функції ord():
>>> ord('A')
65
>>> ord('a')
97
Дізнатися, який символ відповідає певному коду, можна за допомогою функції chr().
>>> chr(65) # код великої англійської ‘A’
'A'
>>> chr (1040) # код великої української ‘A’
'A'
>>> ord('A')
65
>>> ord('a')
97
Дізнатися, який символ відповідає певному коду, можна за допомогою функції chr().
>>> chr(65) # код великої англійської ‘A’
'A'
>>> chr (1040) # код великої української ‘A’
'A'
Зверни увагу!
Великі і мали літери, англійські та українські літери з однаковим написанням мають різні коди.
Приклад:
Вивести на друк перші 256 символів таблиці кодування. Для того, щоб оператор print() на переводив курсор на новий рядок, використовується параметр end=’’:
Доступ до символів у рядку
До конкретного символу в рядку можна звернутися за його індексом (номером позиції в рядку).
Рис.2
Відлік символів можна вести з кінця рядка, починаючи з –1. Наприклад, до третьої з кінця літери рядка s сможна звернутися так: s[-3] (рис.3).
Рис.3
При роботі з текстовими величинами можна добувати зріз (підрядок), тобто копіювати послідовність символів з рядка або частину рядка за певним правилом.
Команда добування зрізу з рядка: z = s[i : j : step], де z — змінна, в яку зберігається підрядок рядка s; і — індекс початку зрізу; j — обмеження справа (не входить у зріз); step — з яким кроком вибираються символи .
Розглянемо застосування операції добування зрізу на прикладі рядка s = ‘Сонечко яскраво сяє'
| Приклад операції зрізу |
Опис
|
Результат
|
| z = s[8:15] |
Зріз від символу з номером i рядка
включно до символу з номером j-1
|
z = 'яскраво' |
| z = s[:7] |
Зріз від початку рядка до символу
з номером j-1
|
z = 'Сонечко' |
| z = s[8:] |
Зріз від символу з номером i рядка s
до кінця рядка
|
z = 'яскраво сяє' |
| z = s[::2] |
Копіювання символів з рядка s
з кроком step
|
z = 'Снчоякаосє' |
| z = s[::-1] |
Запис символів рядка s
у зворотному порядку
|
z = 'єяс оваркся окченоС
|
Дії над рядковими величинами
Згадаємо знайомі вам із 7 класу прийоми опрацювання рядків.| Операція | Опис | Приклад |
| len(s) | Кількість символів, із яких утворено рядок |
k = len(’Сорока’)
# k = 6
|
| subs in s | Визначення наявності підрядка subs в рядку s |
a = 'y' in 'Python'
# a=True
|
| s1 + s2 | Об’єднання рядків s1 і s2 в один рядок s (конкатенація) |
s = ‘Сонце’ + ‘ ‘ + ‘сяє’
# s = ‘Сонце сяє’
|
| n * s | Дублювання рядка s n разів | s1 = ‘+’*5 # s1=’+++++’ |
Рядкові методи
Мова Python надає широкі можливості для опрацювання текстів. Зважаючи на те, що всі змінні в Python є об’єктами, відповідні операції доступні у вигляді методів. У наведених далі прикладах методи викликаються для змінної S, яка містить рядок, який опрацьовується.
Зверни увагу!
Рядки — це незмінювані послідовності. Рядкові методи в Python не змінюють рядка, а утворюють новий. Якщо потрібно далі в програмі використовувати результат виконання методу, його слід зберегти в новій змінній.
|
Виклик методу
для об'єкта S
|
Опис дії
|
Приклад
|
| S.find(S1) |
шукає задану групу символів у рядку S
і повертає номер першого символу
шуканого підрядка в рядку або -1,
якщо в S немає підрядка S1.
|
s = 'Гуси, гуси, га-га-га'
n = s.find('га')
# n = 12
|
| S.replace(sfind, sins) |
замінює підрядок sfind підрядком
sins у заданому рядку S
|
snew =s. replace(‘га’, ‘кря’)
# snew = 'Гуси, гуси, кря - кря - кря '
|
| S.count(subs) |
Повертає кількість входжень
підрядка subs у заданий рядок S
|
s = 'Гуси, гуси, га-га-га'
k = s.count('га')
# k = 3
|
Джерела:
Інформатика : підруч. для 8 кл. закл. загал. серед. освіти / [О. О. Бондаренко, . В. Ластовецький, О. П. Пилипчук, Є. А. Шестопалов]. — Харків : Вид-во Ранок», 2025