Python: Урок 9. Рядки як послідовності символів

Рядки вже згадувалися в уроці про типи даних; розглянемо їх більш докладно.

Рядок (String) — це складний тип даних, що представляє собою послідовність символів.

Рядки в мові програмування Python можуть укладатися як в одиночні, так і подвійні лапки. Однак, початок і кінець рядка повинні обрамлятися однаковим типом лапок.

Існує спеціальна функція len (), яка дозволяє виміряти довжину рядка. Результатом виконання даної функції є число, що показує кількість символів в рядку.

Також для рядків існують операції конкатенації (+) і дублювання (*).
>>> len ('It is a long string')
19
>>> '!!!' + ' Hello World ' + '!!!'
'!!! Hello World !!!'
>>> '-' * 20
'--------------------'
У послідовностях важливий порядок символів, у кожного символу в рядку є унікальний порядковий номер - індекс. Можна звертатися до конкретного символу в рядку і отримувати його з допомогою оператора індексування, який представляє собою квадратні дужки з номером символу в них.
>>> 'morning, afternoon, night'[1]
'o'
>>> tday = 'morning, afternoon, night'
>>> tday[4]
'i'
У прикладі, вираз 'morning, afternoon, night'[1] призвів до витягнення другого символу. Справа в тому, що індексація починається не з одиниці, а з нуля. Тому, коли потрібно витягти перший символ, то оператор індексування повинен виглядати так: [0]. Також дозволено витягувати символи, починаючи відлік з кінця.

У цьому випадку відлік починається з -1 (останній символ).
>>> tday = 'ранок, день, ніч'
>>> tday[0]
'р'
>>> tday[-1]
'ч'
>>> tday[-3]
'н'
Очевидно, що зручніше працювати не з самими рядками, а зі змінними, які на них посилаються. Результат виконання виразу індексування можна присвоїти іншій змінній.
>>> a = "very big string"
>>> a[6]
'i'
>>> b = a[0]
>>> b
'v'
Можна витягати з рядка не один символ, а декілька, тобто отримувати зріз (підрядок). Оператор витягнення зрізу з рядка виглядає так: [X: Y]. X - це індекс початку зрізу, а Y - його закінчення; причому символ з номером Y в зріз вже не входить. Якщо відсутній перший індекс, то зріз береться від початку до другого індексу; за відсутності другого індексу, зріз береться від першого індексу до кінця рядка.
>>> tday = 'morning, afternoon, night'
>>> tday[0:7]
'morning'
>>> tday[9:-7]
'afternoon'
>>> tday[-5:]
'night'
>>> tday[:3]
'mor'
Крім того, можна витягати символи не підряд, а через певну кількість символів. У такому випадку оператор індексування виглядає так: [X: Y: Z]; Z — це крок, через який здійснюється вибір елементів.
>>> str4 = "Full Ball Fill Pack Ring"
>>> str4[::5]
'FBFPR'
>>> str4[0:15:2]
'Fl alFl '

Практична робота

1. Присвойте змінній з будь-який рядок, що складається не менше ніж з 8 символів. Вийміть з рядка перший символ, потім останній, третій з початку і третій з кінця. Виміряйте довжину вашого рядка.
2. Присвойте змінній довільний рядок довжиною 10-15 символів та отримайте з неї наступні зрізи:
  • перші вісім символів;
  • чотири символи з центру рядка;
  • символи з індексами кратними трьом.

Зміст курсу

Вступ
Урок 1. Історія мов програмування. Компіляція та інтерпретація
Урок 2. Знайомство з Python і середовищами програмування
Урок 3. Типи даних в програмуванні. Визначення змінної
Урок 4. Логічні вирази
Урок 5. Умовний оператор. Інструкція if
Урок 6. Множинне розгалуження
Урок 7. Цикл while
Урок 8. Введення даних з клавіатури
Урок 9. Рядки як послідовності символів
Урок 10. Списки - змінювані послідовності
Урок 11. Cловники
Урок 12. Цикл for
Урок 13. Функції
Урок 14. Параметри і аргументи функцій. Локальні та глобальні змінні
Урок 15. Перевірочна робота з основ програмування на Python

Коментарі

Популярні дописи з цього блогу

Азбука Морзе Українською

Python: Урок 4. Логічні вирази

Python: Урок 3. Типи даних в програмуванні. Визначення змінної