gpt4 book ai didi

python - 稀疏矩阵减法

转载 作者:行者123 更新时间:2023-12-04 10:10:12 24 4
gpt4 key购买 nike

我需要编写一个函数来获取字典列表(每个字典都代表一个稀疏矩阵)并返回一个减法矩阵的字典。

例如:对于列表 [{(1, 3): 2, (2, 7): 1}, {(1, 3): 6}]它需要返回 {(1, 3): -4, (2, 7): 1} .

矩阵的大小不必相同,列表可以有两个以上的矩阵,如果减法为 0,则它不应出现在最终字典中。

我成功拿到了-4但无论我在定义后写什么x我收到 x == -6我不知道为什么。我想插入 -4作为元素的新值。

lst = [{(1, 3): 2, (2, 7): 1}, {(1, 3): 6}]
def diff_sparse_matrices(lst):
result = {}
for dictionary in lst:
for element in dictionary:
if element not in result:
result[element] = dictionary[element]
if element in result:
x = result[element] - dictionary[element]

最佳答案

def diff_sparse_matrices(lst):
result = lst[0].copy()
for matrix in lst[1:]:
for coordinates, value in matrix.items():
result[coordinates] = result.get(coordinates, 0) - value
if result[coordinates] == 0:
del result[coordinates]
return result

关于python - 稀疏矩阵减法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61367636/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com