Работа со списками

Если проводить аналогии с миром PHP, то списки это что-то сродни с массивами, но с той лишь оговоркой, что это массивы, обращение к которым возможно исключительно по индексу. 

Обращение к элементам списков

zoo_animals = ["pangolin", "cassowary", "sloth"];
print "The first animal at the zoo is the " + zoo_animals[0]
print "The second animal at the zoo is the " + zoo_animals[1]
print "The third animal at the zoo is the " + zoo_animals[2]

Добавление элементов к спискам

suitcase = [] 
suitcase.append("sunglasses")
suitcase.append("beatles");
suitcase.append("elo");
suitcase.append("kinks");

Обращение к диапазону значений

suitcase = ["sunglasses", "hat", "passport", "laptop", "suit", "shoes"]
# Будет выбран нулевой и первый элемент
first = suitcase[0:2]
# Будет выбран второй и третий элемент
middle = suitcase[2:4]
# Будет выбран четвёртый и пятый элемент
last = suitcase[4:6]

Здесь необходимо запомнить то, что первая цифра участвует в выборке, а вторая - нет.

Допустимы и такие варианты:

animals = "catdogfrog"
# Выборка, начиная с начала и заканчивая третьим индексом (он не попадает в выборку)
cat = animals[:3]
# Начиная с шестого индекса и до конца.
frog = animals[6:]
# Каждый второй элемент
animal[::2]
# Переворачиваем массив
animal[::-1]
# Печатаем каждый 10 элемент в обратном порядке
animal[::-10]

Как узнать индекс элемента и вставить новый элемент списка в любое место

В данном примере мы получим индекс элемента списка со значением "duck" и перед ним вставим новый элемент со значением "cobra".

animals = ["aardvark", "badger", "duck", "emu", "fennec fox"]

# Метод index возвращает индекс элемента списка со значением "duck"
duck_index = animals.index("duck")
# Метод insert производит вставку на указанный индекс (в данном случае, на место "duck"), при этом смещая все остальные элементы вправо.
animals.insert(duck_index,"cobra")
print animals

# Будет распечатано ['aardvark', 'badger', 'cobra', 'duck', 'emu', 'fennec fox']

Сортировка

animals = ["cat", "ant", "bat"]
animals.sort()

Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.