Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Нужен рабочий код по Python

Линар Super Ученик (10), закрыт 9 месяцев назад
Напишите функцию zip_with_function(), которая принимает список списков и функцию, которая принимает несколько аргументов и возвращает значение. Функция zip_with_function() должна использовать функцию zip() для объединения списков в кортежи, а затем применять заданную функцию к кортежам из соответствующих позиций каждого списка. Результатом должен быть новый список, содержащий значения, возвращаемые функцией для каждой комбинации элементов.

Например, имеется функция

def get_sum_two_numbers(a, b):
return a + b
Тогда вызов

zip_with_function([[1, 2, 4], [3, 5, 8]], get_sum_two_numbers)
должен вернуть список [4, 7, 12].

Ваша задача написать только определение функции zip_with_function

Sample Input:

Sample Output:

GOOD
Лучший ответ
Реципиент Гений (70600) 10 месяцев назад
Всё уже придумано до нас:
 from itertools import starmap
zip_with_function = lambda lst, f: list(starmap(f, zip(*lst)))
Остальные ответы
Айран Просветленный (26749) 10 месяцев назад
 def zip_with_function(lst, f): 
return list(map(lambda args: f(*args), zip(*lst)))
Celtic Hammer Мудрец (12263) 10 месяцев назад
 def get_sum_two_numbers(a, b):  
return a + b

def zip_with_function(m, f):
return [f(i[0], i[1]) for i in zip(m[0],m[1])]

print(zip_with_function([[1, 2, 4], [3, 5, 8]], get_sum_two_numbers))
4 7 12
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (243648) 10 месяцев назад
 def zip_with_function(lists, func): 
return [func(*args) for args in zip(*lists)]
Сергей Князев Знаток (327) 7 месяцев назад
def zip_with_function(x, func):
____result = []
____for i in zip(*x):
________ result.append(func(*i))
____return result
Похожие вопросы