В этой статье собраны практически все методы списка python. Если какой-то метод отсутствует, сообщите пожалуйста в комментариях.
- Python List append()
- Python List copy()
- Python List count()
- Python List extend()
- Python List index()
- Python List insert()
- Python List pop()
- Python List remove()
- Python List reverse()
- Python List sort()
Python list append
Метод append() используется для добавления нового элемента в список. При использовании данного метода, новы элемент добавляется в конец списка.
currencies = ['Dollar', 'Euro', 'Rub']
# Добавление в список
currencies.append('Yen')
print(currencies)
# Результат: ['Dollar', 'Euro', 'Rub', 'Yen']
Принимаемые параметры
Метод append() принимает один единственный аргумент
- item — элемент, который может быть числом, строкой, или списком. Все добавляемые элементы, добавляются в конец списка.
Пример 1. Добавление элемента в список
Выше мы уже рассмотрели один небольшой пример, но как мы уже знаем, практика никогда не бывает лишней.
# Список животных
animals = ['cat', 'dog', 'rabbit']
# Добавление нового животного в список
animals.append('guinea pig')
print('Обновленный список животных: ', animals)
Пример 2. Добавление списка в список
Выше, в принимаемых параметрах, мы с вами определили, что список может принимать другой список.
# Список домашних животных
animals = ['cat', 'dog', 'rabbit']
# Список диких животных
wild_animals = ['tiger', 'fox']
# Добавление списка диких животных
animals.append(wild_animals)
print('Обновленный список животных: ', animals)
Необходимо отметить один момент. Бывают ситуации, когда нам надо добавить в список элементы из списка, а не сам список, в такой момент, можно воспользоваться методом extend(), о котором мы поговорим ниже.
List extend
Метод extend() в отличии от метода append(), добавляет элементы списка, в список. Так же как и при использовании метода append(), метод extend() добавляет новые элементы в конец списка.
- Метод extend() добавляет элементы списка в другой список
- Метод append() добавляет список, в другой список
# Список 1
prime_numbers = [2, 3, 5]
# Список 2
numbers = [1, 4]
# Добавляем все элементы prime_numbers в numbers
numbers.extend(prime_numbers)
print('Обновленный список:', numbers)
# Результат: После метода extend(): [1, 4, 2, 3, 5]
Принимаемые параметры
Метод extend() так же как и метод append() принимает следующие параметры:
Пример 1. Используем метод extend()
# Список языков
languages = ['French', 'English']
# Другой список языков
languages1 = ['Spanish', 'Portuguese']
# Добавляем languages1 в список languages
languages.extend(languages1)
print('Обновленный список:', languages)
Пример 2. Добавляем в список кортежи и множества
# Список
languages = ['French']
#Кортеж
languages_tuple = ('Spanish', 'Portuguese')
# Множества
languages_set = {'Chinese', 'Japanese'}
# Добавляем в список кортеж
languages.extend(languages_tuple)
print('Обновленный список:', languages)
# Добавляем множества в наш список
languages.extend(languages_set)
print('Обновленный список:', languages)
#Результат
New Languages List: ['French', 'Spanish', 'Portuguese']
Newer Languages List: ['French', 'Spanish', 'Portuguese', 'Japanese', 'Chinese']
Выше мы рассмотрели классические варианты использование данного метода, но так же есть и другие варианты использования расширения списков.
Пример 3. Оператор «+»
Максимально простой способ.
a = [1, 2]
b = [3, 4]
a += b # a = a + b
# Output: [1, 2, 3, 4]
print('a =', a)
#Результат
a = [1, 2, 3, 4]
Пример 4. Срез и объединение
a = [1, 2]
b = [3, 4]
a[len(a):] = b
# Результат: [1, 2, 3, 4]
print('a =', a)
Python list insert
Списки в python, являются довольно гибким инструментом. Метод insert(), позволяет добавлять элементы между текущими элементами списка. Рассмотрим небольшой пример.
# Открываем список
vowel = ['a', 'e', 'i', 'u']
# передаем позицию, и вставляемый элемент
vowel.insert(3, 'o')
print('Список:', vowel)
# Результат: List: ['a', 'e', 'i', 'o', 'u']
Синтаксис метода insert()
Достаточно просто в использовании метод, ниже представлен его синтаксис.
list.insert(i,элемент)
В данном случаем, i это позиция, куда надо вставить нужный нам элемент, а вторым аргументом является непосредственно сам вставляемый элемент.
- Если i равен 0 — то элемент будет вставлен в начало списка
- Если i равен 3 — то элемент будет вставлен в 4-ю позицию
Пример 1. вставка элемента в список
# Список с числами
prime_numbers = [2, 3, 5, 7]
#Добавляем число 11 в 4ю позицию
prime_numbers.insert(4, 11)
print('List:', prime_numbers)
# Результат
List: [2, 3, 5, 7, 11]
Пример 2. вставка кортежа в список
mixed_list = [{1, 2}, [5, 6, 7]]
# Кортеж с числами
number_tuple = (3, 4)
# вставляем элементы кортежа в список
mixed_list.insert(1, number_tuple)
print('Обновленный список:', mixed_list)
#Результат
Обновленный список: [{1, 2}, (3, 4), [5, 6, 7]]
List remove python
Метод remove() используется для удаления элементов из списка. Данный метод удаляет первый соответствующий переданному аргументу элемент списка.
# Открываем список
prime_numbers = [2, 3, 5, 7, 9, 11]
# Удаляем 9
prime_numbers.remove(9)
# Печатаем список
print('Обновленный список: ', prime_numbers)
# Результат: Обновленный список: [2, 3, 5, 7, 11]
Параметры метода remove()
- remove() принимает один элемент, и удаляет этот элемент из списка, если он там есть
- В случае если элемент отсутствует, мы получим ошибку ValueError:list.remove(x): x not in list
Пример 1. удаляем элемент из списка
# Список животных
animals = ['cat', 'dog', 'rabbit', 'guinea pig']
# 'rabbit' удаляем
animals.remove('rabbit')
# Печатаем список
print('Обновленный список: ', animals)
#Результат
Updated animals list: ['cat', 'dog', 'guinea pig']
Пример 2. Удаление из списка, в котором есть повторяющиеся элементы
# Список животных
animals = ['cat', 'dog', 'dog', 'guinea pig', 'dog']
# 'dog' удаляем
animals.remove('dog')
# Обновляем список
print('Обновленный список: ', animals)
#Результат
Обновленный список: ['cat', 'dog', 'guinea pig', 'dog']
В случаем, если мы пытаемся удалить методом remove() повторяющиеся элементы списка, мы получим удаление только первого вхождения.
Пример 3. Удаляем несуществующий элемент
# Список животных
animals = ['cat', 'dog', 'rabbit', 'guinea pig']
# Удаляем 'fish' элемент
animals.remove('fish')
# Обновленный список
print('Обновленный список: ', animals)
#Результат
Traceback (most recent call last):
File ".. .. ..", line 5, in
animal.remove('fish')
ValueError: list.remove(x): x not in list
Конечно, при попытке удаления несуществующего элемента мы получим ошибку.
- Бывают случаи, когда нам надо удалить элементы по индексу, а не по названию. В таком случае, можно воспользоваться метом pop().
- Так же, не забываем и про метод del()
Python List count
Метод count() — является довольно удобной штукой, для подсчета количества повторений элемента в списке.
# Список с числами
numbers = [2, 3, 5, 2, 11, 2, 7]
# Проверяем повторение элемента 2
count = numbers.count(2)
print('Элемент 2 повторяется:', count)
# Результат:Элемент 2 повторяется: 3
Параметры и синтаксис метода cont()
Синтаксис у данного метода довольно простой:
list.count(элемент)
Параметры метода count()
Метод count() принимает только один параметр:
- Элемент — элемент, который необходимо подсчитать на количество повторений
Пример 1. Используем count()
# Список букв
vowels = ['a', 'e', 'i', 'o', 'i', 'u']
# Считаем элемент 'i'
count = vowels.count('i')
# Печатаем результат подсчета
print('Количество элементов i :', count)
# Считаем элемент 'p'
count = vowels.count('p')
# Печатаем результат подсчета
print('Количество элементов p :', count)
#Результат
Количество элементов i: 2
Количество элементов p: 0
Python List pop
Метод pop() работает следующим образом:
- Передаем методу pop() индекс удаляемого элемента из списка
- Элемент удаляется, и метод pop() возвращает нам значение удаленного элемента
# Список чисел
prime_numbers = [2, 3, 5, 7]
# Удаляем элемент с индексом 2
removed_element = prime_numbers.pop(2)
print('Удаленный элемент', removed_element)
# Результат: Удаленный элемент: 5
Параметры метода pop()
- Метод pop() принимает индекс удаляемого элемента, в качестве аргумента
- Передавать аргумент методу pop(), необязательно. В случае, если аргумент не передан, то, по умолчанию передается индекс -1, что в Python является индекс последнего элемента списка.
- В случае, если переданный индекс находится вне диапазона, мы получим ошибку IndexError: pop index out of range
Пример 1. Удаляем по заданному индексу
# Список языков программирования
languages = ['Python', 'Java', 'C++', 'French', 'C']
# Удаляем 4ый элемент
return_value = languages.pop(3)
print('Значение:', return_value)
# Updated List
print('Обновленный список:', languages)
#Результат
Return Value: French
Updated List: ['Python', 'Java', 'C++', 'C']
Пример 2. Удаляем без передачи индекса
# Список языков программирования
languages = ['Python', 'Java', 'C++', 'Ruby', 'C']
# Удаляем последний элемент/возвращаем значение
print('When index is not passed:')
print('Return Value:', languages.pop())
print('Updated List:', languages)
# Удаляем последний элемент/возвращаем значение
print('\nWhen -1 is passed:')
print('Return Value:', languages.pop(-1))
print('Updated List:', languages)
# Удаляем 3 с конца элемент/возвращаем значение
print('\nWhen -3 is passed:')
print('Return Value:', languages.pop(-3))
print('Updated List:', languages)
#Результат
When index is not passed:
Return Value: C
Updated List: ['Python', 'Java', 'C++', 'Ruby']
When -1 is passed:
Return Value: Ruby
Updated List: ['Python', 'Java', 'C++']
When -3 is passed:
Return Value: Python
Updated List: ['Java', 'C++']
Так же не забывайте о методах del(), remove(). Данные элементы так же прекрасно и по своему справляются с удалением элементов из списка.
Python List reverse
По названию данного метода, думаю вам уже понятно для чего он предназначен. Метод reverse() меняет элементы в обратном порядке.
prime_numbers = [2, 3, 5, 7]
prime_numbers.reverse()
print('Reversed List:', prime_numbers)
# Результат: Список в обратном порядке: [7, 5, 3, 2]
Синтаксис и параметры метода reverse()
Синтаксис как и у других методов списка, достаточно простой, и выглядит следующим образом:
list.reverse()
- reverse() — не принимает никаких аргументов
- reverse() — не возвращает ничего. Он обновляет существующий список.
Пример 1. Список в обратном порядке
# Список с ОС
systems = ['Windows', 'macOS', 'Linux']
print('Оригинальный список:', systems)
# Список reverse
systems.reverse()
# Обновленный список
print('Обновленный список:', systems)
#Результат
Оригинальный список: ['Windows', 'macOS', 'Linux']
Обновленный список: ['Linux', 'macOS', 'Windows']
В этом примере, мы рассмотрели работу метода reverse(), но в Python существуют несколько способов изменения порядка элементов в списке.
Пример 2. Переворачиваем список, с помощью срезов
# Список с ОС
systems = ['Windows', 'macOS', 'Linux']
print('Оригинальный список:', systems)
# Переворачиваем список
# Синтаксис: reversed_list = systems[start:stop:step]
reversed_list = systems[::-1]
# Обновленный список
print('Updated List:', reversed_list)
#Результат
Original List: ['Windows', 'macOS', 'Linux']
Updated List: ['Linux', 'macOS', 'Windows']
Более подробно про нарезку/срезы.
Python List copy
Метод copy(), копирует нужный нам список. Все достаточно просто.
prime_numbers = [2, 3, 5]
numbers = prime_numbers.copy()
print('Copied List:', numbers)
# Результат: Скопированный список: [2, 3, 5]
Синтаксис и параметры copy()
new_list = list.copy()
- Copy() — Не принимает никаких параметров
- Copy() — Возвращает новый список. Новый, неизмененный список
Конечно, в python так же предусмотрены и другие методы копирования, ниже приведу небольшой пример того, как можно скопировать список с помощью оператора «=»
Копируем список с помощью оператора «=»
old_list = [1, 2, 3]
new_list = старый список
Но, хочу вас предупредить, по факту, если мы изменим оригинальный список, то у нас так же изменится скопированный. Такое явление происходит из за того, что новый объект списка, ссылается на старый, и отслеживает его состояние.
old_list = [1, 2, 3]
new_list = old_list
# Добавляем новый элемент
new_list.append('a')
print('Новый список:', new_list)
print('Старый список:', old_list)
Python List index
Метод index() возвращает индекс того или иного элемента в списке. Рассмотрим небольшой пример.
animals = ['cat', 'dog', 'rabbit', 'horse']
# передаем методу 'dog'
index = animals.index('dog')
print(index)
# Результат: 1
Синтаксис и параметры метода index()
list.index(element, start, end)
Параметры index()
Метод index() может принимать максимум три параметра:
- element — непосредственно тот элемент, индекс которого надо найти
- start — необязательный параметр, указывает на начальную точку поиска
- end — необязательный параметр, поиск выполняется до указанного индекса
Стоит отметить, что метод index(), возвращает индекс только первого вхождения, соответствующего элемента.
Пример 1. Найдем индекс элемента
vowels = ['a', 'e', 'i', 'o', 'i', 'u']
index = vowels.index('e')
print('Индекс элемента:', index)
# Ищем индекс 'i'
# Получим индекс первого 'i'
index = vowels.index('i')
print('The index of i:', index)
#Результат
The index of e: 1
The index of i: 2
На самом деле, не думаю что данный пример требует каких либо объяснений. Мы просто передаем элемент, и получаем его индекс.
Пример 2. Индекс элемента которого нет в списке
Тут все достаточно просто, в случае, если в списке отсутствует передаваемый элемент, то вместо индекса, мы получим знакомую нам ошибку ValueError.
alphabets = ['a', 'e', 'i', 'o', 'g', 'l', 'i', 'u']
index = alphabets.index('e') # 1
print('The index of e:', index)
index = alphabets.index('i', 4) # 6
print('The index of i:', index)
index = alphabets.index('i', 3, 5) # Error!
print('The index of i:', index)
#Результат
The index of e: 1
The index of i: 6
Traceback (most recent call last):
File "*lt;string>", line 13, in
ValueError: 'i' is not in list