#python #zip
#python #zip
Вопрос:
Я не могу понять, как сложить целые числа вместе в двух матрицах с помощью zip()
функции. Вот что у меня есть:
matrix_a = [[3,6],[4,5]]
matrix_b = [[5,8],[6,7]]
Мне нужно распечатать (используя zip()
):
[[8,14],[10,12]]
Комментарии:
1. Я добавил ответ на ваш вопрос.
Ответ №1:
Следующее понимание списка сделает свое дело:
>>> [[x y for x, y in zip(a, b)] for a, b in zip(matrix_a, matrix_b)]
[[8, 14], [10, 2]]
Если вы хотите версию, использующую циклы:
result = []
for a, b in zip(matrix_a, matrix_b):
current_list = []
for x, y in zip(a, b):
current_list.append(x y)
result.append(current_list)
>>> result
[[8, 14], [10, 2]]
Тем не менее, мне определенно больше нравится версия для понимания, ее легче читать.
Комментарии:
1. Я считаю, что в версии для понимания есть один дополнительный уровень
[]
.2. @RiversShall, я просто исправил свой ответ и добавил версию с использованием циклов for. Хороший улов!