Подорож №6 Величини текстового типу та операції з ними.

Опрацювання текстових даних

Для опрацювання тексту в мові програмуванні існують рядковий тип даних str. Дані типу str беруться в лапки "текст", або в апострофи 'текст'. Це залежить від самого тексту. Якщо всередині тексту є апостроф, то його бажано взяти в лапки:

  Вікно редактора Python
s ="комп'ютер"

Якщо всередині тексту є лапки, то його бажано взяти в апострофи:

  Вікно редактора Python
s = 'Мова програмування "Python"'

Але, може бути ситуація, коли в тексті присутні апостроф і лапки.
Наприклад:

  Вікно редактора Python
s = 'Назва статті "Комп'ютер у суспільстві" '

В даному випадку програма містить синтаксичну помилку із-за зайвого апострофа:



Щоб уникати помилок такого типу, необхідно застосовувати escape-послідовності.
\' вставка апострофа без перевірки.
\" - вставка лапок без перевірки

В наведеному прикладі, задля уникнення помилок, треба було побудувати рядок таким чином:

  Вікно редактора Python
s = 'Назва статті "Комп\'ютер у суспільстві" '

Текст у декілька рядків

Ще одна escape-послідовність \n здійснює перехід на наступний рядок. Це корисно, коли треба вивести інформацію в декілька рядків:

  Вікно редактора Python
# \n - перехід на новий рядок
s = "Перший рядок \n Другий рядок \n Третій рядок"
print(s)

Після запуску програми на екрані виведеться:

  Вікно команд Python Shell
>>>
Перший рядок
Другий рядок
Третій рядок
>>>

Склеювання рядків

Над величинами типу str можна здійснювати операцію "склеювання" рядків. Це дозволяє вибудовувати будь-які текстові конструкції. Для склеювання рядків існує операція +
Наприклад:

s = "Персональний " + "комп'ютер"
print(s)

В результаті на екран виведеться:

Персональний комп'ютер

Розмноження тексту

Ви вже знаєте про знак множення *, але не знаєте про те, що його можна застосувати до текстового рядка. Припустимо маємо текст
s = "текст "
print(s*5) означатиме, що текст повториться 5 разів. В результаті вийде:

текст текст текст текст текст

Ось приклад оформлення виведення повідомлення:

  Вікно редактора Python
# оформлення рамок
print("*" * 20)
print(" " * 6,"Python")
print("*" * 20)

В результаті виконання отримуємо:

  Вікно команд Python Shell
>>>
********************
       Python
********************
>>>

Довжина рядка

В деяких випадках необхідно дізнатися про довжину рядка. Для цього підійде функція n = len('рядок'). Ця функція повертає ціле число кількості символів в рядку.

  Вікно редактора Python
# довжина рядка
s = '0123456789'
n = len(s)
print('довжина рядка - ',n)

Питання і вправи:

1) тренувальний тест

Перейти >>>

2) створити програму

В редакторі Python створіть програму, яка б виводила на екран наступний вірш у поданому форматі використовуючи лише одну вказівку print:

  Вікно команд Python Shell
>>>
================== RESTART: C:/Users/К22/Documents/example.py ==================
Росла в гаю конвалія
Під дубом високим,
Захищалась від негоди
Під віттям широким.
>>>

3) Створити та удосконалити програму

Створіть програму, яка б виводила на екран наступний діалог:

  Вікно команд Python Shell

>>>
================== RESTART: C:/Users/К22/Documents/example.py ==================
Ваш улюблений футбольний клуб? Барселона
Барселона - чемпіон!
>>>

Поміркуйте та удоскональте дану програму таким чином, щоб вона виводила це повідомлення у святковому форматі:

  Вікно команд Python Shell
>>>
Ваш улюблений футбольний клуб? Барселона
************************
*Барселона - чемпіон!*
************************
>>>

4) Створити програму - діалог

В редакторі Python створіть програму, яка б виводила на екран наступний діалог:

  Вікно команд Python Shell
>>>
Введіть пропущену букву в слові пан рама о
панорама
>>>