1 of 27

Рядковий тип даних

Нова українська школа

Урок 42

Інформатика 7

teach-inf.com.ua

за підручником

Бондаренко О.О. та ін.

2 of 27

Рядковий тип даних

Багато задач програмування пов’язані з опрацюванням текстових даних:

  • задачі шифрування інформації,
  • перекладу з однієї мови на іншу
  • ігри зі словами тощо.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

3 of 27

Рядковий тип даних

Для опрацювання текстових даних у Python існує тип даних str (від англ. string — рядок).

Значення величини типу str — це довільна послідовність (рядок) символів.

Рядкові константи в Python записують в:

одинарних лапках

подвійних лапках

' '

'' ''

або

Початок і кінець рядка мають бути в лапках одного виду.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

4 of 27

Коди символів

Усі символи (літери, цифри, знаки пунктуації тощо) утворюють так звану таблицю символів. Кожний символ у ній має свій номер – код.

Код символу можна визначити за допомогою функції ord():

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

5 of 27

Коди символів

Дізнатися, який символ відповідає певному коду, можна за допомогою функції chr():

Великі й малі літери, літери англійського й українського алфавітів із подібним написанням мають різні коди.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

6 of 27

Коди символів

Величини будь-якого типу можна перетворити на рядок за допомогою функції str():

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

7 of 27

Нумерація символів у рядку

До символу в рядку можна звертатися за індексом, зазначивши його у квадратних дужках. Розгляньмо приклади.

У текстовому рядку важливим є порядок символів. У рядку кожний символ має порядковий номер – індекс. Нумерація починається з нуля.

Програмний код

Результат

Ч

а = 'Червона калина'

print(а[0])

Надрукуємо першу літеру рядка Червона калина:

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

8 of 27

Нумерація символів у рядку

Відлік символів можна починати з кінця рядка. У цьому випадку індекси починаються з -1 (останній символ).

Програмний код

Результат

и

а = 'Червона калина'

print(а[-3])

Надрукуємо третю з кінця літеру рядка Червона калина:

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

9 of 27

Нумерація символів у рядку

Присвоїмо змінній b символ рядка а з індексом 8, змінній x символ рядка а з індексом 10:

Програмний код

Результат

к

л

а = 'Червона калина'

b = а [8]

x = а [10]

print(b)

print(x)

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

10 of 27

Нумерація символів у рядку

Функція len() повертає кількість символів, із яких утворено рядок.

Синтаксис функції:

змінна цілого типу для збереження значення, яке повертає функція;

k

k = len(s)

s

рядок, довжину якого потрібно визначити.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

11 of 27

Нумерація символів у рядку

Визначимо довжину рядка Червона калина:

Програмний код

Результат

14

a = 'Червона калина'

print(len(a))

Пропуск теж є символом, тому довжина рядка дорівнює 14.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

12 of 27

Отримання зрізів

З рядка можна отримати не лише символ, а й зріз (частину символів рядка). Зріз із суміжних символів — це підрядок. Використання зрізів дозволяє отримувати підрядки за одну дію. Команда добування зрізу з рядка:

z = s[i:j:step]

змінна, в яку зберігається підрядок рядка s;

z

індекс початку зрізу;

і

індекс його закінчення (причому символ із номером j у зріз не входить);

j

крок, з яким вибираються символи.

step

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

13 of 27

Отримання зрізів

Якщо символи вибираються підряд, то параметр step можна опустити. Якщо відсутній індекс початку зрізу, то зріз береться від 0-го до (j-1)-гo символу. За відсутності індексу закінчення зрізу зріз береться від і-го символу до кінця рядка.

Скопіюємо з рядка а підрядок Червона:

Програмний код

Результат

Червона

a = 'Червона калина'

print(a[:7])

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

14 of 27

Отримання зрізів

Скопіюємо з рядка а підрядок калина:

Програмний код

Результат

калина

a = 'Червона калина'

print(a[8:])

Скопіюємо з рядка а символи з парними індексами:

Програмний код

Результат

Чроаклн

a = 'Червона калина'

print(a[::2])

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

15 of 27

Отримання зрізів

Рядки – це незмінювані послідовності. При спробі змінити символ усередині рядка виникне помилка.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

16 of 27

Отримання зрізів

Запишемо символи рядка а у зворотному порядку:

Програмний код

Результат

анилак ановреЧ

a = 'Червона калина'

print(a[::-1])

nohtyP

a = 'Python'

print(a[::-1])

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

17 of 27

Перегляд символів у рядку

Під час опрацювання рядкових величин буває потрібно перевірити, чи є певний підрядок у рядку. Для цього в Python існує оператор in, який:

якщо підрядок

наявний у рядку

якщо підрядок

відсутній у рядку

повертає True

повертає False

Програмний код

Результат

True

print('y' in 'Python')

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

18 of 27

Перегляд символів у рядку

За допомогою циклу for можна вивести рядок по літерах:

Програмний код

Результат

P

y

t

h

o

n

a = 'Python'

for c in a:

print(c)

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

19 of 27

Операції конкатенації і дублювання

Об’єднання двох або більше рядків в один рядок називають конкатенацією. Цю операцію позначають символом:

+

Об’єднаємо рядкові змінні а і b, додавши між ними пропуск.

Програмний код

Результат

Богдан Хмельницький

a = 'Богдан'

b = 'Хмельницький'

c = a+ ' ' +b

print(c)

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

20 of 27

Операції конкатенації і дублювання

Дублювання – це повторення текстового фрагмента задану кількість разів. Цю операцію позначають символом:

*

Повторимо символ «-» 20 разів.

--------------------

c = '-' * 20

print(c)

Повторимо символи «:-)» 5 разів.

:-):-):-):-):-)

c = ':-)' *5

print(c)

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

21 of 27

Операції конкатенації і дублювання

Потроїмо кожний символ рядка s.

Програмний код

Результат

111222333444555

s = '12345'

s1 = ''

for i in s:

s1 = s1+i*3

print(s1)

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

22 of 27

Ознайомтеся з цікавою інформацією

Американська розробниця програмного забезпечення

Радія Джой Перлман стала першою, хто почав навчати програмування дітей

молодшого віку.

Вона розробила дитячу версію навчальної робототехнічної

мови LOGO.

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

23 of 27

Питання для самоперевірки

  1. s = 'Вивчайте мову Python!'

Визначте довжину рядка s і індекс літери 'Р'.

  1. Запишіть команди, що реалізують присвоєння змінній b таких зрізів рядка а:

а) перші вісім символів;

б) останні чотири символи;

в) символи з індексами, кратними трьом.

  1. Запишіть команду, за якою з рядка S отримано рядок S1:

a) S = 'інформатика' 🡪 ? 🡪 S1 = 'форма'

б) S = 'інформатика' 🡪 ? 🡪 S1 = 'інтика'

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

24 of 27

Розгадайте ребус

«Ребуси українською» © rebus1.com

Символ

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

25 of 27

Домашнє завдання

Проаналізувати

с. 198-203

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

26 of 27

Працюємо за комп’ютером

Сторінка

203

© Вивчаємо інформатику teach-inf.com.ua

Розділ 5

§ 33

27 of 27

Дякую за увагу!

Нова українська школа

Урок 42

Інформатика 7

teach-inf.com.ua

за підручником

Бондаренко О.О. та ін.