Форум сайта python.su
Есть функция, которой передаются 3 аргумента. Хочется запустить её через map, но чтобы изменялся только один из трех аргументов, а остальные 2 задавались до этого. Думал над вариантом создания списка из трех списков, где 2 из них - повторяющиеся значения, но хочется чего-то более элегантного.
Как быть?
Офлайн
In [1]: ls = [1,2,3,4]
In [2]: def f(a, b, c):
...: return a*b+c
...:
In [3]: map(lambda x: f(x, 2, 3), ls)
Out[3]: [5, 7, 9, 11]
Офлайн
Офлайн
как вариант - использовать карринг. хотя на счет эффективности ничего не скажу
http://www.intuit.ru/department/pl/python/class/free/3/7.html
Офлайн
PooH
Про лямбду я и не подумал. Стильно, спс :)
Офлайн