Python списки. Задачи для начинающих

Вместе с партнерами из telegram-канала Python задачки мы собрали для тебя несколько простых задач по Python. В этой статье разберем списки.

Задача 1

Дан список некоторых целых чисел, найдите значение 20 в нем и, если оно присутствует, замените его на 200. Обновите список только при первом вхождении числа 20.

Посмотреть решение>

Мы можем использовать метод index(), который позволит получить индекс первого вхождения некоторого объекта (в нашем случае числа 20). Затем просто изменим элемент списка с этим индексом до нужного нам значения (то есть 200).

list1 = [5, 10, 15, 20, 25, 50, 20]

index = list1.index(20)
list1[index] = 200
print(list1)

 

Задача 2

Необходимо удалить пустые строки из списка строк.

Посмотреть решение>

Мы можем использовать функцию filter() для удаления объектов типа None из списка

list1 = ["Mike", "", "Emma", "Kelly", "", "Brad"]
resList = list(filter(None, list1))
print(resList)

 

Задача 3

Дан список чисел. Превратите его в список квадратов этих чисел.

Посмотреть решение>

Мы бы могли использовать цикл for, но по отношению к памяти и скорости выполнения оптимальнее будет использовать list comprehension.

aList = [1, 2, 3, 4, 5, 6, 7]
aList =  [x * x for x in aList]
print(aList)

 

Задача 4

Дан список чисел, необходимо удалить все вхождения числа 20 из него.

Посмотреть решение>

Здесь, как и в третьей задаче, будем использовать list compehension объединив его с тернарным оператором.

list1 = [5, 20, 15, 20, 25, 50, 20]

def removeValue(sampleList, val):
   return [value for value in sampleList if value != val]
resList = removeValue(list1, 20)
print(resList)

 

Задача 5

Необходимо вывести список в обратном порядке.

Посмотреть решение>

Самым простым решением станет срез. При указании шага среза -1, мы получим тот же список, но в обратном порядке.

aList = [100, 200, 300, 400, 500]
aList = aList[::-1]
print(aList)