Featured image of post Py07. Списки. Исчерпывающее руководство

Py07. Списки. Исчерпывающее руководство

Списки. Исчерпывающее руководство. Это одна из наиболее часто используемых структур данных в Python и используется во многих различных приложениях программирования.

Введение

В Python список - это структура данных, которая используется для хранения набора значений. Это одна из наиболее часто используемых структур данных в Python и используется во многих различных приложениях программирования.

Создание списка

Чтобы создать список, вы можете использовать квадратные скобки [] и разделять значения запятыми. Например:

1
my_list = [1, 2, 3, 4, 5]

Это создает список с именем my_list со значениями 1, 2, 3, 4 и 5.

Доступ к элементам в списке

Вы можете получить доступ к отдельным элементам списка, используя их индекс. В Python первый элемент в списке имеет индекс 0. Например:

1
2
my_list = [1, 2, 3, 4, 5]
print(my_list[0])

Это привело бы к выводу значения 1.

Вы также можете использовать отрицательные индексы для доступа к элементам из конца списка. Например:

1
2
my_list = [1, 2, 3, 4, 5]
print(my_list[-1])

Это привело бы к выводу значения 5.

Изменение элементов в списке

Вы можете изменять элементы в списке, присваивая новое значение определенному индексу. Например:

1
2
3
my_list = [1, 2, 3, 4, 5]
my_list[0] = 6
print(my_list)

Это изменило бы первый элемент в my_list на 6.

Добавление элементов в список Вы можете добавлять элементы в список с помощью метода append(). Например:

1
2
3
my_list = [1, 2, 3, 4, 5]
my_list.append(6)
print(my_list)

Это добавило бы значение 6 в конец my_list.

Вы также можете использовать метод extend() для добавления нескольких элементов в список одновременно. Например:

1
2
3
my_list = [1, 2, 3, 4, 5]
my_list.extend([6, 7, 8])
print(my_list)

Это добавило бы значения 6, 7 и 8 в конец my_list.

Удаление элементов из списка Вы можете удалить элементы из списка, используя метод remove(). Например:

1
2
3
my_list = [1, 2, 3, 4, 5]
my_list.remove(3)
print(my_list)

Это привело бы к удалению значения 3 из my_list. Вы также можете использовать метод pop() для удаления элемента с определенным индексом. Например:

1
2
3
my_list = [1, 2, 3, 4, 5]
my_list.pop(2)
print(my_list)

Это привело бы к удалению элемента с индексом 2 (третий элемент) из my_list.

Operation Syntax Description
Создание my_list = [] or my_list = list() Создает пустой список
my_list = [value1, value2, ...] Создает список с начальными значениями
Доступ my_list[index] Обращается к значению по указанному индексу
my_list[start:end] Получает доступ к фрагменту значений от начального индекса до конечного индекса, но не включая его
Модификация my_list[index] = new_value Заменяет значение по указанному индексу новым значением
my_list.append(value) Добавляет новое значение в конец списка
my_list.extend(iterable) Добавляет значения из iterable в конец списка
my_list.insert(index, value) Вставляет новое значение по указанному индексу
Удаление del my_list[index] Удаляет значение по указанному индексу
my_list.remove(value) Удаляет первое вхождение указанного значения
my_list.pop(index) Удаляет и возвращает значение по указанному индексу или последнее значение, если индекс не указан
my_list.clear() Удаляет все значения из списка
Другой len(my_list) Возвращает количество значений в списке
sorted(my_list) Возвращает новый список со значениями, отсортированными в порядке возрастания
reversed(my_list) Возвращает новый список со значениями в обратном порядке

Более продвинутое использование

Вот еще несколько полезных методов для работы со списками в Python

  • append(): добавляет элемент в конец списка
1
2
3
my_list = ['apple', 'banana', 'cherry']
my_list.append('orange')
print(my_list) # ['apple', 'banana', 'cherry', 'orange']
  • insert(): вставляет элемент в определенную позицию в списке
1
2
3
my_list = ['apple', 'banana', 'cherry']
my_list.insert(1, 'orange')
print(my_list) # ['apple', 'orange', 'banana', 'cherry']
  • remove(): удаляет первое вхождение указанного элемента в список
1
2
3
my_list = ['apple', 'banana', 'cherry']
my_list.remove('banana')
print(my_list) # ['apple', 'cherry']
  • pop(): удаляет элемент с указанным индексом или последний элемент, если индекс не указан, и возвращает удаленный элемент
1
2
3
4
my_list = ['apple', 'banana', 'cherry']
removed_element = my_list.pop(1)
print(my_list) # ['apple', 'cherry']
print(removed_element) # 'banana'
  • clear(): удаляет все элементы из
1
2
3
my_list = ['apple', 'banana', 'cherry']
my_list.clear()
print(my_list) # []
  • sort():списка, упорядочивает элементы в списке в порядке возрастания (или по убыванию, если для параметра reverse установлено значение True)
1
2
3
my_list = [3, 2, 1]
my_list.sort()
print(my_list) # [1, 2, 3]
  • reverse():изменяет порядок элементов в списке на противоположный
1
2
3
my_list = ['apple', 'banana', 'cherry']
my_list.reverse()
print(my_list) # ['cherry', 'banana', 'apple']

Генераторы списков

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

Синтаксис: [expression for item in iterable]

  • Let’s say we have a list of numbers and we want to create a new list with each number multiplied by 2:
1
2
3
4
numbers = [1, 2, 3, 4, 5]
new_numbers = [num * 2 for num in numbers]
print(new_numbers) # [2, 4, 6, 8, 10]
We can also use an if statement to filter the items that are included in the new list:
1
2
3
numbers = [1, 2, 3, 4, 5]
even_numbers = [num for num in numbers if num % 2 == 0]
print(even_numbers) # [2, 4]

Срезы

Синтаксис: list[start_index:end_index:step]

  • Let’s say we have a list of numbers and we want to extract the second through fourth elements:
1
2
3
4
numbers = [1, 2, 3, 4, 5]
new_list = numbers[1:4]
print(new_list) # [2, 3, 4]
We can also use negative indices to start counting from the end of the list:
1
2
3
numbers = [1, 2, 3, 4, 5]
new_list = numbers[-3:-1]
print(new_list) # [3, 4]
  • We can also use a step value to skip elements:
1
2
3
numbers = [1, 2, 3, 4, 5]
new_list = numbers[::2]
print(new_list) # [1, 3, 5]

Как list comprehensions, так и slices - это мощные инструменты для работы со списками на Python, позволяющие вам с легкостью выполнять сложные операции со списками.

Еще приемы

  • Объединение списков: Вы можете объединить два или более списков, используя оператор +. Вот пример:
1
2
3
4
list1 = [1, 2, 3]
list2 = [4, 5, 6]
concatenated_list = list1 + list2
print(concatenated_list)  # [1, 2, 3, 4, 5, 6]
  • Повторение списка: Вы можете повторить список несколько раз, используя оператор *. Вот пример:
1
2
3
list1 = [1, 2, 3]
repeated_list = list1 * 3
print(repeated_list)  # [1, 2, 3, 1, 2, 3, 1, 2, 3]
  • Проверка наличия элемента в списке: Вы можете проверить, присутствует ли элемент в списке, используя ключевое слово in. Вот пример:
1
2
3
list1 = [1, 2, 3]
print(2 in list1)  # True
print(4 in list1)  # False
  • Определение длины списка: Вы можете найти количество элементов в списке с помощью функции end(). Вот пример:
1
2
list1 = [1, 2, 3]
print(len(list1))  # 3
  • Вы также можете отсортировать список в обратном порядке, передав методу sort() параметр reverse=True:
1
2
3
list1 = [1, 2, 3]
list1.sort(reverse=True)
print(list1)  # [3, 2, 1]
comments powered by Disqus
Сделано с 💖
Создано при помощи Hugo
Тема Stack, дизайн Jimmy