MyTetra Share
Делитесь знаниями!
Обратный порядок элементов списка
Время создания: 31.08.2017 21:02
Текстовые метки: challenge
Раздел: Python - Задачник - Функциональное программирование
Запись: xintrea/mytetra_db_mcold/master/base/150331681579y9nvrq37/text.html на raw.githubusercontent.com

И наконец, возьмем задачу обращения списка посредством свертки. Напомню, у нас имеется список чисел 2, 3, 4, 5, 7, 5. Обращенный список будет таков: 5, 7, 5, 4, 3, 2. Давайте расставим скобочки, чтобы увидеть, какую операцию нам нужно будет применить в функции-редукторе: (5, (7, (5, (4, (3, (2)). Очевидно, что это операция добавления каждого нового элемента списка в начало результата с предыдущего шага свертки. Инициализатор же должен быть пустым списком: (5, (7, (5, (4, (3, (2, [])). Теперь запишем конкретный код:


x = [ 2, 3, 4, 5, 7, 5 ]
y =
reduce(lambda a, b: [ b ] + a, x, [])
print(y)


-------------------

[5, 7, 5, 4, 3, 2]


 
MyTetra Share v.0.59
Яндекс индекс цитирования