Списки – змінювані послідовності
Нова українська школа
Урок 45
Інформатика 7
teach-inf.com.ua
за підручником
Бондаренко О.О. та ін.
Списки – змінювані послідовності
Ми вже розглянули прості типи даних:
цілі числа
дійсні числа
рядки
логічні значення
Величина простого типу містить одне значення.
Але в житті ми постійно стикаємося з наборами значень, об’єднаних за певними ознаками, наприклад:
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Поняття списку
Для опрацювання сукупностей даних у програмуванні існують структуровані типи, один з яких — список. Величина структурованого типу може містити множину значень.
Список (list) — це упорядкований набір об’єктів різних типів чисел, рядків, списків тощо), який можна змінювати.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Поняття списку
[ ]
Ви вже використовували списки колірних констант під час малювання Черепашкою:
colors = ['red', 'yellow', 'green', 'blue']
Як бачимо, створити змінну типу список можна за допомогою оператора присвоєння.
У тексті програми список беруть у квадратні дужки, а його елементи відокремлюють комами.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Поняття списку
Створимо змінні типу список:
# Порожній список
list1 = []
# Список із дробових чисел (тип float)
list2 = [3.14, 9.8, 2.4, 1.0]
list3 = ['робот', 'машина', 'ведмедик', 'каченя’]
# Список із рядків (тип str)
list4 = ['Дмитрук', 2008, 1.64, 'футбол']
# Список із даних різних типів
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Поняття списку
Список можна уявити собі як полицю, на якій розташовано деякі об’єкти.
list3=
list3 = ['робот', 'машина', 'ведмедик', курча']
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Поняття списку
Додати елемент до списку можна за допомогою методу append().
Доданий елемент займе місце в кінці списку.
Додамо до списку list3 елемент 'равлик':
list3 = ['робот', 'машина', 'ведмедик', 'курча']
list3.append('равлик')
print(list3)
Буде виведено:
['робот', 'машина', 'ведмедик', 'курча', 'равлик']
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Поняття списку
Додати елемент можна тільки до вже створеного списку, можливо, порожнього.
Створимо список із десяти перших натуральних чисел:
Програмний код
Результат
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
a = []
for i in range(1, 11):
a.append(i)
print (a)
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Операція in
Перевірити, чи є в списку певний елемент, допоможе операція in.
Синтаксис використання операції in:
<значення> in <послідовність>
Результат операції — значення логічного типу:
рядок, список, діапазон тощо, в якому виконується пошук значення
послідовність
True
якщо послідовність містить значення
або
False
якщо послідовність не містить значення
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Операція in
Визначимо, чи є в списку letters елемент 'a':
if 'a' in letters:
print('Так')
else:
print(''Елемента 'a' в списку немає'')
Умова 'a' in letters набуває:
значення True,
якщо в списку letters є рядок 'а'
значення False,
якщо в списку letters немає рядка 'а'
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Нумерація елементів списку
Списки є впорядкованими послідовностями, тому можна отримувати доступ до їх елементів за їхніми індексами, добувати зрізи, вимірювати довжину списку. Нумерація елементів починається з нуля.
lst = ['a' 'b' 'c' 'd' 'e' 'f']
lst[0] = 'a'
0
1
2
3
4
5
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Нумерація елементів списку
Дано список lst = ['a', 'b', 'c', 'd', 'e', ' f ']. Проаналізуємо результати виконання дій зі списком.
| Дія | Оператор | Результат виконання |
1 | Визначити довжину списку | len(lst) | 6 |
2 | Вивести елемент списку з індексом 3 | lst[3] | 'd' |
3 | Вивести перші 3 елементи списку | lst[0:3] | ['a', 'b', 'c'] |
4 | Вивести елементи списку, починаючи з елемента з номером 3 і до кінця | lst[3:] | ['d', 'e', ' f '] |
5 | Вивести зріз списку довжиною 1 елемент | lst[3:4] | ['d'] |
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Нумерація елементів списку
Зріз списку теж є списком. У прикладі для отримання елемента списку вказано його індекс, тому отримано значення типу string.
Але якщо указати суміжні індекси через двокрапку, отримаємо зріз у вигляді списку з одного елемента.
Вивести елемент списку з індексом 3
lst[3]
'd'
Вивести зріз списку довжиною 1 елемент
lst[3:4]
['d']
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Нумерація елементів списку
На відміну від рядків, списки — це змінювані послідовності: елементи списку можна змінювати, вилучати, додавати нові.
Змінимо значення 1-го елемента списку mylist на ''м'яч''.
mylist =
mylist[1] = ''м’яч''
mylist =
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Нумерація елементів списку
У слові «м’яч» є апостроф, тому слово потрібно взяти в подвійні лапки.
Програмний код
Результат
['робот', "м'яч", 'ведмедик', 'курча']
mylist = ['робот', 'машина', 'ведмедик', 'курча']
mylist[1] = "м'яч"
print(mylist)
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Нумерація елементів списку
Замінимо перші три елементи списку нулями:
Програмний код
Результат
[0, 0, 0, 4, 5, 6, 7, 8, 9, 10]
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
lst[0:3] = [0, 0, 0]
print(lst)
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Об’єднання й повторення списків
Як і над рядками, над списками можна виконувати операції:
Подвоїмо список [1, -2, 5]:
об’єднання
+
повторення
*
Програмний код
Результат
[1, -2, 5, 1, -2, 5]
a = [1, -2, 5]
a = a*2
print(a)
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Об’єднання й повторення списків
Об’єднаємо списки [1, -2, 5] і [2, 3, 0]:
Програмний код
Результат
[1, -2, 5, 2, 3, 0]
c = [1, -2, 5]+[2, 3, 0]
print(c)
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Об’єднання й повторення списків
Списки дуже корисні в програмах, у яких потрібно працювати з сукупностями даних (наприклад, таблиця результатів спортивних змагань). Як бачимо, використання списків дозволяє опрацьовувати в циклі всі елементи за єдиним алгоритмом.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Питання для самоперевірки
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Розгадайте ребус
«Ребуси українською» © rebus1.com
Список
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Домашнє завдання
Проаналізувати
с. 211-216
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Працюємо за комп’ютером
Сторінка
215-216
© Вивчаємо інформатику teach-inf.com.ua
Розділ 5
§ 35
Дякую за увагу!
Нова українська школа
Урок 45
Інформатика 7
teach-inf.com.ua
за підручником
Бондаренко О.О. та ін.