Блог
  • Разработка

Списки в Python: набор элементов list и работа с ним

Списки в Python используют для решения множества задач в программировании. Давайте посмотрим, что они собой представляют и как взаимодействовать с list. Попробуем создать собственные структуры данных и поработать с ними.

Что собой представляют списки в Python (list)

Списки в Python — это тип данных, который содержит коллекцию объектов. В процессе написания кода разработчики дополняют, редактируют и удаляют элементы в списке. Какую последовательность задаёт программист, так её и запомнит Python.

Нумерация (индексация) происходит автоматически от 0. Пронумерованные значения могут представлять как целые числа, так и строки. Последовательности чисел и строк бывают однородными или смешанными. Пример представлен на скрине.

Списки в Python (list) похожи на массивы, только с особенностями каждого из типов.

Особенности списков как типа данных

Значения, из которых состоит list, называют элементами. Программисты могут вызывать их по индексам.

Рассмотрим пример:

my_list = [100, 200, 300, 400, 500]
# Получаем элемент списка по индексу.
element = my_list[2] # Он будет равен 300


При обращении к данным list учитывают, что нумерация начинается с 0. При обращении к одному из элементов программист должен указать номер столбца и строки.

Во время работы со сложными математическими операциями используют специальную библиотеку NumPy. В ней вы найдёте мощные N-мерные массивы, генераторы случайных чисел и многое другое.

Есть ещё одна особенность: принцип работы создания list в Python состоит из резервирования пустой области в памяти компьютера. Это распространяется на любой другой тип данных. Однако именно содержимое list может быть изменено в будущем. Остальные типы данных не изменяются в процессе создания приложения или при его работе.

Где применяют списки

Списки в программировании на Python используют, когда нужно:

  • реализовать структуры данных, таких как стеки или очереди;

  • отсортировать или отфильтровать компоненты для проведения анализа данных;

  • передать их в функции как аргументы для последующей обработки;

  • хранить и передавать информацию, являющуюся результатом запросов к БД.

Списки применяют для хранения и обработки данных, полученных из API и веб-сервисов. Например, для работы с SMS API от МТС Exolve тоже используют списки, когда пишут код в Python.

Основные функции и запросы списков в Python

Запрос

Значение

append(item)

Добавление в конец списка

insert(index, item)

Добавление элемента в индекс

extend(items)

Добавление набора компонентов в конец списка

remove(item)

Удаление компонента

clear()

Полное очищение списка

index(item)

Возвращение индекса компонента. Если программа его не находит, то выводит ошибку ValueError

reverse()

Расстановка компонентов списка в обратном порядке

copy

Копирование списка


Встроенные функции для списков Python

Встроенные функции

Значение

len

Возвращение длины list

sorted

Возвращение отсортированного списка

min/max

Возвращение наименьшего или наибольшего компонента списка


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

Теперь, когда мы знаем, что такое списки, и изучили их функции и методы, создадим собственный. Этого можно добиться разными способами, но мы попробуем сделать list вручную и через преобразование других типов данных в список.

Создание и индексация

Для начала работы с командой list нужно зайти в интегрированную среду для программирования на языке Python. Используйте PyCharm — простую и одновременно мощную IDE для написания, редактирования и тестирования кода.

Давайте создадим список из следующих чисел: 1000, 2000, 3333. Что нужно сделать:

1. Запустите PyCharm. Создайте пустой список.

my_list = [] 

2. Добавьте элементы в list. Это могут быть числовые значения или литеры. Используйте метод append.
my_list.append("1000")
my_list.append("2000")
my_list.append("3333")

3. Теперь выведите эти элементы на экран. Если вы дадите команду print(my_list), то получите перечисления указанных ниже чисел: 

['1000', '2000', '3333']

4. С помощью команды list можно преобразовать строку в список. Например, у нас есть слово Wonderful. Давайте из этих букв сделаем список.

Пропишите следующий код:

my_lst = list('Wonderful')
print(my_lst)

Система отобразит литеры списком: [‘W’,’o’,’n’,’d’,’e’,’r’,’f’,’u’,’l’].

5. Комбинируйте списки с другими функциями. В ответ получите строку, разделённую на отдельные символы.

Допустим, у нас есть строка «Я люблю программирование». Преобразуем её в список.

Пропишите следующий код:

sp = list('Я люблю программирование')
print(sp)

Система отобразит строку с литерами списком: ['Я', ' ', 'л', 'ю', 'б', 'л', 'ю', ' ', 'п', 'р', 'о', 'г', 'р', 'а','м','м','и','р','о','в','а','н','и','е'].

Изменение и объединение

Разработчики изменяют элементы с помощью команды list. Решим такую задачу. У нас есть список из следующих элементов: l, 1, 20, 400, 5000. Нам предстоит изменить число 20 на 1000.

Для этого пропишите следующий код:

my_lis = ['l', 1, 20, 400, 5000]
my_lis[2] = 1000 # меняем элемент с индексом 2 на значение 1000.
print(my_lis)

Ответ: ['l', 1, 1000, 400, 5000].

Как видите, число 20 было успешно заменено на 1000.

Теперь рассмотрим два списка, которые необходимо объединить. Например, у нас есть список из строки I Love и You.

Пропишем в IDE следующий код:

list1 = ["I Love"] # Можно использовать одинарные кавычки и двойные ‘’, ‘’ ‘’.
list2 = ["You"]

Объединим их с использованием оператора «+»:

result = list1 + list2
print(result)

Система выдаст следующее значение: ['I Love', 'You'].

Давайте теперь попробуем использовать метод extend():

list1.extend(list2)
print(list1)

Система выдаст нам такое значение: ['I Love', 'You'].

Перебор элементов и сравнение

Перебирают элементы в Python с помощью циклов for и while. Давайте попробуем перебрать последовательность литер a, b, c, d, e.

Пропишем код:

my_list = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’]
for item in my_list:
print(item)

Этот код переберёт все элементы в my_list и выведет их на экран.

Сделаем то же самое только с помощью цикла While.

Напишем код:

my_list = ['a', 'b', 'c', 'd', 'e']
index = 0 # Исправлено: убрана a и добавлена начальная позиция 0.
while index < len(my_list):
print(my_list[index])
index += 1

Здесь программа будет перебирать литеры, начиная с a, увеличивая индекс на 1 при каждой итерации.

Представим, что у нас есть два списка "a", "b", "c" и "1", "2", "3". Давайте попробуем сравнить их в Python.

list1 = ["a", "b", "c"]
list2 = ["1", "2", "3"]
result = list(zip(list1, list2)) # ZIP — это функция, принимающая файлы, списки, строки на входе и группирующая их в неизменяемый список.
for item in result:
print(item)

Будут созданы пары, и система выведет на экран:

('a', '1')
('b', '2')
('c', '3')

Заключение

Вы познакомились со списками в Python и научились создавать их, изменять и перебирать элементы. Используйте изученную информацию в будущем при написании кода.

Предыдущая статья
Оцените статью:
Следующая статья