menu_bookИнструкции
Операции со списками в Python
sort(), index(), count(), remove(), pop() и list comprehension
sort1. Сортировка — sort() и sorted()
sort() — изменяет оригинал
nums = [5, 1, 8, 3] nums.sort() print(nums) # [1, 3, 5, 8] nums.sort(reverse=True) print(nums) # [8, 5, 3, 1]
sorted() — создаёт новый список
nums = [5, 1, 8, 3] new = sorted(nums) print(nums) # [5, 1, 8, 3] оригинал print(new) # [1, 3, 5, 8] новый
search2. Поиск — index() и count()
| Метод | Что делает | Пример |
|---|---|---|
| index(x) | Возвращает индекс первого вхождения x | [1,3,5].index(3) → 1 |
| count(x) | Считает количество вхождений x | [1,3,3,5].count(3) → 2 |
| x in lst | Проверяет, есть ли x в списке | 3 in [1,3,5] → True |
warning
Осторожно! Если элемент не найден — index() вызовет ошибку. Используйте
if x in lst перед вызовом.delete3. Удаление — remove() и pop()
remove(x) — удаляет по значению
nums = [1, 3, 5, 3]
nums.remove(3)
print(nums) # [1, 5, 3]
# Удалено первое вхождение
nums.remove(3)
print(nums) # [1, 5, 3]
# Удалено первое вхождение
pop(i) — удаляет по индексу
nums = [1, 3, 5]
val = nums.pop(1)
print(val) # 3
print(nums) # [1, 5]
val = nums.pop(1)
print(val) # 3
print(nums) # [1, 5]
flash_on4. List comprehension — списки в одну строку
Мощный инструмент Python — создание нового списка в одну строку на основе существующего:
list_comprehension.py
1
2
3
4
5
6
7
2
3
4
5
6
7
nums = [1, 2, 3, 4, 5, 6] # Квадраты чисел squares = [x**2 for x in nums] # [1,4,9,16,25,36] # Только чётные evens = [x for x in nums if x % 2 == 0] # [2,4,6] # Квадраты только нечётных odd_sq = [x**2 for x in nums if x % 2 != 0] # [1,9,25]
Синтаксис:
[выражение for переменная in список if условие]