Блог

Python: список (list)

Иногда, на собеседованиях спрашивают про диапазоны (var[:]). Очень удобно использовать и не создавать велосипед. С помощью простой конструкции можем сделать выбрать диапазон от – до или выбрать через, продублировать список, перевернуть и т.д.

Еще одно из приятных плюшек в python, что все это, так же работает и для строк (string).

Пусть у нас есть список, вот такого вида:

 >>> l = [1,2,3,4,5,6,7]

Как можно скопировать (продублировать) список

>>> l[:]
   # Создать копи сколько вам нужно * на n, список дублируется n раз
>>> l * 1
>>> [item for item in l]
>>> set(l)
>>> from copy import copy
>>> copy(l)
>>> list(l)
>>> b = []
>>> b + l

Пожалуй хватит, в результате будет все равно [1, 2, 3, 4, 5, 6, 7]
Выбрать диапазон от – до:

>>> l[2:5]
>>> [i for i,v in enumerate(l) if i > 2 and i <=5 ]
>>> [l[i] for i in range(2,5) if l[i]]

В результате будет [3, 4, 5]
Как перевернуть список:

>>> l[::-1]
>>> l.reverse()
>>> [i for i in reversed(l)]

В результате будет [7, 6, 5, 4, 3, 2, 1]