Я думаю о разных способах взять сумму квадратов в python. Я обнаружил, что следующие работы с использованием списковых:Сумма квадратов с использованием лямбда-функций
def sum_of_squares(n):
return sum(x ** 2 for x in range(1, n))
Но при использовании лямбда-функции, следующие не вычислить:
def sum_of_squares_lambda(n):
return reduce(lambda x, y: x**2 + y**2, range(1, n))
Почему это?
что вы имеете в виду под «не вычислить»? – math2001
Поскольку сумма квадратов соответствует лямбда x, y: x + y ** 2', а не 'lambda x, y: x ** 2 + y ** 2'. – hobbs
x + y ** 2 вместо. x - текущая сумма в лямбда, поэтому не повторяйте ее снова. –