2 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個贊
您可以使用enumerate并切片原始索引以從第一個索引開始,例如
res = [[v[0], f'{arr_1[i+1][1]}-{arr_1[i][1]}'] for i, v in enumerate(arr_1[1:])]
# [['key2', 'v2-v1'], ['key3', 'v3-v2'], ['key4', 'v4-v3']]
擴(kuò)展循環(huán):
res = []
for i, v in enumerate(arr_1[1:]):
res.append([v[0], f'{arr_1[i+1][1]}-{arr_1[i][1]}'])

TA貢獻(xiàn)2016條經(jīng)驗(yàn) 獲得超9個贊
這里有一個簡單的方法來解決它:
Array1 = [['key1', 1], ['key2', 2], ['key3', 3], ['key4', 4]]
array2 = []
for i, elem in enumerate(Array1[1:]):
array2.append([elem[0], elem[1] - Array1[i][1]])
print(array2)
您迭代Array1從第二個元素開始的元素并保持key原樣,同時將第二個元素計算為當(dāng)前元素減去前一個元素值的差值(即Array1[i][1],因?yàn)閕從 開始0)。這打?。?/p>
[['key2', 1], ['key3', 1], ['key4', 1]]
希望這可以幫助。
添加回答
舉報