Python. Списки

Список (list) — тип данных, предназначенный для хранения набора или последовательности разных элементов.

А = [1, 3, 5, 6]
Чтобы обратиться к элементу списка, достаточно указать его индекс.
Пример:
А = [1, 2, 3, 'word']
print(A[3])
>>word
Индекс — это порядковый номер элемента в списке. В примере выше индексы (позиции в списке) соответственно будут: 0, 1, 2, 3.
Нумерация элементов списка в Python начинается с нуля!
Длину списка, то есть количество элементов в нем, можно узнать при помощи функции len
Пример:
Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']
print(len(Rainbow))
>>6

Добавления элементов в список:
append() – добавляет один элемент в список
Пример:
list1 = [12, '34', 'код', 134]
list1.append(17)
list1.append('89')
print(list1)
>>[12, '34', 'код', 134, 17, '89']
insert() – вставляет один элемент в заданную позицию списка
Пример:
list1 = [12, '34', 'код', 134]
index1 = 1
list1.insert(index1, 5)
print(list1)
>>[12, 5, '34', 'код', 134]

Срезы

Со списками, так же как и со строками, можно делать срезы. А именно:
A[i:j] срез из j-i элементов A[i], A[i+1], …, A[j-1].
Списки, в отличии от строк, являются изменяемыми объектами: можно отдельному элементу списка присвоить новое значение. Но можно менять и целиком срезы. Например:
A = [1, 2, 3, 4, 5]
A[2:4] = [7, 8, 9]
Получится список, у которого вместо двух элементов среза A[2:4] вставлен новый список уже из трех элементов. Теперь список стал равен [1, 2, 7, 8, 9, 5].

Операции со списками

Со списками можно легко делать много разных операций.

x in A Проверить, содержится ли элемент в списке. Возвращает True или False
x not in A То же самое, что not(x in A)
min(A) Наименьший элемент списка
max(A) Наибольший элемент списка
A.index(x) Индекс первого вхождения элемента x в список, при его отсутствии генерирует исключение ValueError
A.count(x) Количество вхождений элемента x в список

Задачи

  1. Вводится список из 10 чисел. Выведите все элементы списка с четными индексами.
  2. Вводится список из 10 чисел. Найдите количество положительных (>0) элементов в данном списке.
  3. Дан список из 10 чисел. Если в нем есть два соседних элемента одного знака, выведите эти числа. Если соседних элементов одного знака нет – не выводите ничего. Если таких пар соседей несколько – выведите первую пару.
  4. Петя перешёл в другую школу. На уроке физкультуры ему понадобилось определить своё место в строю. Помогите ему это сделать.
    Программа получает на вход невозрастающую последовательность натуральных чисел, означающих рост каждого человека в строю. После этого вводится число X – рост Пети. Все числа во входных данных натуральные и не превышают 200.
    Выведите номер, под которым Петя должен встать в строй. Если в строю есть люди с одинаковым ростом, таким же, как у Пети, то он должен встать после них.
    Пример
    входные данные
    165 163 160 160 157 157 155 154
    162
    выходные данные
    3