N
последних элементов списка срезом.Например получим 5 последних элементов списка:
>>> lst = list(range(10)) >>> lst # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> lst[-5:] # [5, 6, 7, 8, 9]
При помощи синтаксиса среза можно сделать гораздо больше. Синтаксис lst[-n]
получает элемент n
начиная с конца. Таким образом, list[-1]
получает последний элемент, list[-2]
получает предпоследний и т. д., вплоть до list[-len(list)]
, что дает первый элемент.
N
последних элементов реверсом списка.Если использовать реверс списка, то последние элементы оригинального списка окажутся в начале:
# создаем список >>> lst = list(range(10)) >>> lst # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # переворачиваем список, !обратите внимание, # что метод `.reverse()` изменяет список "на месте" # Если нужно сохранить оригинальный список, то # необходимо работать с копией lst_copy = lst.copy() >>> lst.reverse() >>> lst # [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] # последние элементы начального списка >>> lst[:5] # [9, 8, 7, 6, 5]
Если нужно, то результирующий список можно отобразить в обратном порядке:
>>> rev_lst = lst[:5] >>> rev_lst.reverse() >>> rev_lst [5, 6, 7, 8, 9]