Слайд 2Повторение
Что такое циклический алгоритм?
Что возвращает функция range()?
Приведите пример цикла for
Приведите пример цикла
while
Для чего нужен оператор Break?
Для чего нужен оператор Continue?
Слайд 3Списки
С каким видом «списка» мы уже знакомы? Строки и range() возвращает список.
Т.е. список – это последовательность, набор каких-то данных. В случае со строками это набор однотипных символов, в случае с функцией range() это набор чисел.
Но когда нам нужно хранить другие объекты? Несколько строк например, или разные, неупорядоченные числа. В этом нам поможет такой тип данных как список.
Слайд 4Списки
Список (list) представляет собой изменяемый тип данных, который хранит набор или последовательность
элементов. Для создания списка в квадратных скобках ([]) через запятую перечисляются все его элементы.
Также для создания списка можно использовать конструктор list():
Оба этих определения списка аналогичны - они создают пустой список.
Слайд 5Списки
Конструктор list для создания списка может принимать другой список.
Для обращения к элементам
списка надо использовать индексы, которые представляют номер элемента в списка. Индексы начинаются с нуля. То есть второй элемент будет иметь индекс 1. \Для обращения к элементам с конца можно использовать отрицательные индексы, начиная с -1. То есть у последнего элемента будет индекс -1, у предпоследнего - -2 и так далее.
Слайд 6Списки
Список необязательно должен содержать только однотипные объекты. Мы можем поместить в один
и тот же список одновременно строки, числа, объекты других типов данных.
Для перебора элементов можно использовать как цикл for, так и цикл while. Перебор с помощью цикла for:
Слайд 7Практика
Измените под цикл while. Чтобы узнать количество элементов в списке, необходимо воспользоваться
функцией len(переменная-список).
Слайд 8Методы и функции по работе со списками
Для управления элементами списки имеют целый
ряд методов. Некоторые из них:
append(item): добавляет элемент item в конец списка
insert(index, item): добавляет элемент item в список по индексу index
remove(item): удаляет элемент item. Удаляется только первое вхождение элемента. Если элемент не найден, генерирует исключение ValueError
clear(): удаление всех элементов из списка
index(item): возвращает индекс элемента item. Если элемент не найден, генерирует исключение ValueError
pop([index]): удаляет и возвращает элемент по индексу index. Если индекс не передан, то просто удаляет последний элемент.
count(item): возвращает количество вхождений элемента item в список
sort([key]): сортирует элементы. По умолчанию сортирует по возрастанию. Но с помощью параметра key мы можем передать функцию сортировки.
reverse(): расставляет все элементы в списке в обратном порядке
Слайд 9Проверка наличия элемента
Если определенный элемент не найден, то методы remove и index
генерируют исключение. Чтобы избежать подобной ситуации, перед операцией с элементом можно проверять его наличие с помощью ключевого слова in:
Слайд 10Списки списков
Списки кроме стандартных данных типа строк, чисел, также могут содержать другие
списки. Подобные списки можно ассоциировать с таблицами, где вложенные списки выполняют роль строк. Например:
Чтобы обратиться к элементу вложенного списка, необходимо использовать пару индексов: users[0][1] обращение ко второму элементу первого вложенного списка.
Слайд 11Кортежи
Кортеж (tuple) представляет последовательность элементов, которая во многом похожа на список за
тем исключением, что кортеж является неизменяемым (immutable) типом. Поэтому мы не можем добавлять или удалять элементы в кортеже, изменять его.
Для создания кортежа используются круглые скобки, в которые помещаются его значения, разделенные запятыми:
Если вдруг кортеж состоит из одного элемента, то после единственного элемента кортежа необходимо поставить запятую:
Слайд 12Кортежи
Для создания кортежа из списка можно передать список в функцию tuple(), которая
возвратит кортеж:
Обращение к элементам в кортеже происходит также, как и в списке по индексу. Индексация начинается также с нуля при получении элементов с начала списка и с -1 при получении элементов с конца списка. Попробуйте получить элементы списка сами.
Слайд 13Перебор кортежей
Для перебора кортежа можно использовать стандартные циклы for и while. С помощью цикла for:
С
помощью цикла while:
Слайд 14Кортежи
Как для списка с помощью выражения элемент in кортеж можно проверить наличие элемента
в кортеже.
Один кортеж может содержать другие кортежи в виде элементов.
Слайд 15Практика
Есть список a = [1, 1, 2, 3, 5, 8, 13, 21,
34, 55, 89]. Выведите все элементы, которые меньше 5.
Слайд 16Практика
Даны списки:
a = [1, 1, 2, 3, 5, 8, 13, 21, 34,
55, 89];
b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13].
Нужно вернуть список, который состоит из элементов, общих для этих двух списков.