Перейти до змісту

Вкладені структури даних

Оскільки списки і кортежі можуть містити елементи будь-яких типів, то в них можна включити і самі ж списки і кортежі також.

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

>>> person1 = ('Іван', 'Петренко', 23)
>>> person2 = ('Даринка', 'Пилипчук', 19)
>>> students = [person1, person2]
>>> students
[('Іван', 'Петренко', 23), ('Даринка', 'Пилипчук', 19)]
>>> students[1]
('Даринка', 'Пилипчук', 19)
>>> students[1][0]
'Даринка'
>>> students[1][2]
19
>>>

Вище було створено список елементиами якого є кортежі. Списки у свою чергу можуть бути елементами кортежа. Давайте разом із даними про кожного студента зберігати і отримані оцінки:

>>> person = ('Юля', 'Хоменко', [5, 4, 5, 5])
>>> person
('Юля', 'Хоменко', [5, 4, 5, 5])
>>> marks = person[2]
>>> marks
[5, 4, 5, 5]
>>>

А як щодо створити список списків?

>>> matrix = [[1, 2, 3],
... [4, 5, 6],
... [7, 8, 9]]
>>> matrix
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> matrix[0]
[1, 2, 3]
>>> matrix[0][2]
3
>>> matrix[2][0]
7
>>> matrix[2][2]
9
>>>