- •Мета роботи
- •Короткі теоретичні відомості
- •1. Змінні, операції і вирази
- •1.1 Використання інтерпретатора Python, як калькулятора
- •1.2. Представлення тексту
- •1.3. Значення і типи
- •1.4. Перетворення типів
- •1.6. Імена змінних і ключові слова
- •Всього в Python зарезервовано 29 ключових слів:
- •1.7. Вирази
- •1.8. Виконання виразів
- •1.9. Оператори і операнди
- •1.10. Порядок операцій
- •2.1. Прості операції над стрічками
- •2.2. Оператор індексування
- •2.3. Довжина стрічки і від’ємні індекси
- •2.4. Доступ до підстрічок
- •2.5. Зміни у стрічках
- •2.4. Речення
- •3. Списки
- •3.1. Створення списків
- •3.2. Функція range
- •3.3. Списки і індекси
- •3.4. Довжина списку
- •3.5. Додатково про списки
- •3.6. Оператор del
- •4. Кортежі
- •5. Набори
- •Додаток а Сьогодні ми вивчили:
- •Методи роботи зі стрічками
- •Методи роботи зі списками
- •Порядок виконання роботи
- •Варіанти завдань
- •Література
- •Інтернет посилання
- •Методичні вказівки
2.4. Доступ до підстрічок
У випадку коли потрібно отримати доступ до більш ніж одного символу, ми повинні в квадратних дужках вказати індекс першого символу і останнього розділивши їх двокрапкою. Цей процес називається slicing (зріз).(Рис 1.)
Рис.1. Формування зрізів при доступі до під стрічок.
>>> msg='Monty Python'
>>> msg[6:10]
'Pyth'
>>> msg[-12:-7]
'Monty'
Звертаємо увагу, що ми отримали три символи але не отримали четвертий. Якщо ввести діапазон [0:11] отримаємо всю стрічку.
>>> msg='Monty Python'
>>> msg[6:10]
'Pyth'
>>> msg[-12:-7]
'Monty'
>>> len(msg)
12
>>> msg[0:12]
'Monty Python'
Також можна використовувати від’ємні індекси, та опускати перший чи останні індекс.
>>> msg[0:5]
'Monty'
>>> msg[:5]
'Monty'
>>> msg[:-1]
'Monty Pytho'
>>> msg[:]
'Monty Python'
При доступі до підстрічок можна задавати крок в зрізі. В наступному прикладі ми доступаємось до кожного другого символу з вказаного діапазону та отримуємо обернену послідовність.
>>> msg[0:12:2]
'MnyPto'
>>> msg[12:0:-2]
'nhy to'
2.5. Зміни у стрічках
Стрічка – це послідовність символів з довільним доступом. Стрічку в мові Python неможливо змінити – в цьому випадку говорять, що це immutable тип. Спроба змінити символ в певній позиції або підстрічці викличе помилку:
>>> msg='Monty Python'
>>> msg[2]
'n'
>>> msg[2]='k'
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
msg[2]='k'
TypeError: 'str' object does not support item assignment
Але, змінити символ можна за допомогою зрізів в такий спосіб:
>>> msg=msg[:2]
>>> msg='Monty Python'
>>> msg[:2]
'Mo'
>>> msg[3:]
'ty Python'
>>> msg=msg[:2]+'k'+msg[3:]
>>> msg
'Mokty Python'
2.4. Речення
Речення також можна представити як стрічку і працювати з нею, як було показано вище.
>>> sent='colorless green ideas sleep furiously'
>>> sent[16:21]
'ideas'
>>> len(sent)
37
Але нам потрібно працювати з реченням, яка є послідовністю слів, а не символів. Тому, варто познайомитися з наступним типом послідовностей – списками.
3. Списки
Список – це впорядкована множина значень, що ідентифікуються індексом. Багато в чому списки є схожими на стрічки, які, по суті, теж є впорядкованими множинами символів. Відмінність списків і стрічок полягає в тому, що елементи списку можуть бути любого типу. Впорядковані множини називають послідовностями.
3.1. Створення списків
Існує наскільки способів створення списків. Найпростіший з них: перерахувати елементи списку через кому в квадратних дужках:
>>> [10, 20, 30, 40]
[10, 20, 30, 40]
>>> ["one", "two", "three"]
['one', 'two', 'three']
Перший приклад – список чотирьох цілих чисел, а другий – список трьох стрічок. Елементи списків зовсім не обов'язково повинні бути одного типу. Наступний список містить стрічку, ціле і дробове числа і інший список:
>>> ["hello", 5, 2.0 [10, 20]]
['hello', 5, 2.0 [10, 20]]
Список, що є елементом іншого списку, називають вкладеним.
Список, який не містить жодного елементу, називають порожнім. Він позначається порожніми квадратними дужками ([]).
Ну, і нарешті, як і будь-які інші значення, списки можуть зберігатися в змінних:
numbers = [17, 123, 537]
empty = []
print numbers, empty
[17, 123, 537] []
