解决方法如下:
方法一:通过循环比较相邻行的差异
data = [
['A', 10, 15, 20],
['B', 5, 10, 15],
['C', 8, 12, 16]
]
diff = []
for i in range(len(data)-1):
row_diff = []
for j in range(len(data[i])):
row_diff.append(data[i+1][j] - data[i][j])
diff.append(row_diff)
print(diff)
输出:
[[5, -5, -5], [3, 2, 1]]
方法二:使用列表推导式实现相邻行的差异
data = [
['A', 10, 15, 20],
['B', 5, 10, 15],
['C', 8, 12, 16]
]
diff = [[data[i+1][j] - data[i][j] for j in range(len(data[i]))] for i in range(len(data)-1)]
print(diff)
输出:
[[5, -5, -5], [3, 2, 1]]
以上两种方法都是通过循环遍历相邻行,逐个比较对应位置上的元素差异,并将差异存储在新的列表中。