Трюк дня. Использование срезов без указания индексов
В Python синтаксис срезов списков допускает отсутствие индексов. Это можно применить с пользой:
Можно очистить список от всех элементов:
>>> lst = [1, 2, 3, 4, 5]
>>> del lst[:]
>>> lst
[]
Можно заменить все элементы списка, не создавая новый объект:
>>> a = lst
>>> lst[:] = [7, 8, 9]
>>> lst
[7, 8, 9]
>>> a
[7, 8, 9]
>>> a is lst
True
Можно также создать копию списка (поверхностную):
>>> b = lst[:]
>>> b
[7, 8, 9]
>>> b is lst
False
#tips
Post #325
7K