将两个列表列表的整数相加
Add integers of two lists of lists together
我正在尝试编写一个函数,它接受两个数字列表列表和 returns 一个列表列表,其中添加了两个给定列表列表中的每个相应数字一起。不使用任何第三方库(例如不使用 pandas)。
它应该像这样工作:
>>> matrix1 = [[1, -2], [-3, 4]]
>>> matrix2 = [[2, -1], [0, -1]]
>>> add(matrix1, matrix2)
[[3, -3], [-3, 3]]
我当前的代码:
list_3 = []
# Add function
def add(*args):
for arg in args:
for i in range(0, len(args)):
list_3.append(arg[i - 1] + arg[i - 1] + arg[i - 1])
print(f"Result: {list_3}")
我的代码不起作用。帮助将不胜感激。
您可以遍历参数,然后遍历每个参数的项目。
def add(*args):
list_tmp = []
for arg in args:
for item in arg:
list_tmp.append(item)
return list_tmp
我还建议您将项目存储在局部变量 (list_tmp
) 中并 return:您可以避免使用全局变量。
使用 zip
:
的几个嵌套理解很简单
>>> matrix1 = [[1, -2], [-3, 4]]
>>> matrix2 = [[2, -1], [0, -1]]
>>> [[a + b for a, b in zip(x, y)] for x, y in zip(matrix1, matrix2)]
[[3, -3], [-3, 3]]
或者可能使用 map
和 sum
构建内部列表:
>>> [list(map(sum, zip(x, y))) for x, y in zip(matrix1, matrix2)]
[[3, -3], [-3, 3]]
我正在尝试编写一个函数,它接受两个数字列表列表和 returns 一个列表列表,其中添加了两个给定列表列表中的每个相应数字一起。不使用任何第三方库(例如不使用 pandas)。
它应该像这样工作:
>>> matrix1 = [[1, -2], [-3, 4]]
>>> matrix2 = [[2, -1], [0, -1]]
>>> add(matrix1, matrix2)
[[3, -3], [-3, 3]]
我当前的代码:
list_3 = []
# Add function
def add(*args):
for arg in args:
for i in range(0, len(args)):
list_3.append(arg[i - 1] + arg[i - 1] + arg[i - 1])
print(f"Result: {list_3}")
我的代码不起作用。帮助将不胜感激。
您可以遍历参数,然后遍历每个参数的项目。
def add(*args):
list_tmp = []
for arg in args:
for item in arg:
list_tmp.append(item)
return list_tmp
我还建议您将项目存储在局部变量 (list_tmp
) 中并 return:您可以避免使用全局变量。
使用 zip
:
>>> matrix1 = [[1, -2], [-3, 4]]
>>> matrix2 = [[2, -1], [0, -1]]
>>> [[a + b for a, b in zip(x, y)] for x, y in zip(matrix1, matrix2)]
[[3, -3], [-3, 3]]
或者可能使用 map
和 sum
构建内部列表:
>>> [list(map(sum, zip(x, y))) for x, y in zip(matrix1, matrix2)]
[[3, -3], [-3, 3]]