Python. Работа со списками.

Под списком понимается набор элементов, следующих в определённом порядке. Что может храниться в списке? Да что угодно! Например, имена всех членов вашей семьи, список товаров, список всех улиц города. В списке могут храниться также и другие списки и вообще самые разные объекты. Например:

Программа выдаст:

[‘Иванов’, ‘Петров’, ‘Сидоров’]

Вы скажите: ну и что? На самом деле списки — это довольно таки мощный инструмент. Допустим, у вас есть файл, содержащий слова. Вы хотите загрузить эти слова в память компьютера и как-то обработать их. А количество слов заранее неизвестно. Удобный способ сделать это — загрузить файл именно в список.

О том, как вообще грузить текстовую информацию из файла, см. уроки: Python. Взлом шифровPython. Взлом шифров. Продолжение  и Python. Взлом шифров. Продолжение-2.

Сначала о том, как создаться списки. Их можно создать через [], через list, а также как набор заранее заданный набор значений. Рассмотрим примерю

Через []:

Через list:

Вы спросите, а в чем разница? Сейчас продемонстрирую наглядно:

Результат работы данной программы будет такой:

[‘И’, ‘в’, ‘а’, ‘н’, ‘о’, ‘в’]
[‘Иванов’]

Иными словами, list из строки может сделать список, содержащий отдельные символы данной строки. И не только из строки. По сути дела, функция list осуществляет преобразование типов. Например, она позволит конвертировать из кортежа (тьюпла) в список:

Тьюпл — это как бы список, но не список. В смысле, что он тоже состоит из нескольких элементов. Только вот  при создании списка мы его элементы указываем в квадратных скобках, а при создании тьюпла — в круглых. В чем разница между тьюплом и списком? Список можно менять, а тьюпл — неизменяемый. Он как разнородный массив (может состоять из элементов разного типа). По сути, тьюпл — это что-то вроде списка-константы.

При помощи list можно также создать список из списка (по сути, сделать копию). Также копию списка можно сделать при помощи [:]

Добавить элемент в список можно командой append, вы это уже знаете, я  писал выше. Раз можно добавить, значит, можно и удалить. команда remove:

Обратите внимание, что в качестве параметра указываем не индекс а элемент. Если укажем элемент, которого нет в списке, то питон выдаст сообщения об ошибке.  Можно удалить и по индексу, командой del:

Индексы начинаются с нуля.

Доступ к конкретному элементу списка также возможен по индексу через  []:

Программа выдаст:

2
[1, 2, ‘fff’, 10]

Внезапно, но можно указать и отрицательный индекс. то будет означать, что надо брать элементы с конца, -1 возьмет последний элемент, — 2 — предпоследний и так далее:

Программа выдаст:

10
3
[1, 2, 3, 333]

Из списка можно вычленить подсписок, указав начальный и конечный элемент (конечный не включительно):

Выдаст:

[10, ‘sdfds’]

Внезапно, но выбранный диапазон можно изменить:

Программа выдаст

[1, 2, 3, 4, 7, 9, 44, 11]

Изменяя диапазон, можно добавить элемент в конец списка, как это делает метод append:

Программа выдаст:

[1, 2, 3, 10, ‘sdfds’, 44, 11, 4, 7, 9]

Чтобы добавить в список другой список, нужно воспользоваться командой extend (не append), так как последняя добавить не элементы списка, а сам список, как элемент данного списка:

Программа выдаст:

[1, 2, 3, 10, ‘sdfds’, 44, 11, 3, 4, 5]
[1, 2, 3, 10, ‘sdfds’, 44, 11, [3, 4, 5]]

На этом пока урок окончен, но у списков есть еще много интересных возможностей, поэтому, продолжение следует.

Comments

So empty here ... leave a comment!

Добавить комментарий

Sidebar