python里,怎么合并相同的数组的值?
发布网友
发布时间:2022-04-26 04:48
我来回答
共3个回答
热心网友
时间:2022-04-18 07:19
x=[['北京', 2], ['北京', 1], ['天津', 1], ['福建', 1]]
tmp = {}
for v in x:
tmp[v[0]] = tmp.get(v[0]) and tmp[v[0]] + v[1] or v[1]
x= [ [k, v] for (k, v) in tmp.items() ]
print(x)
输出:
[['北京', 3], ['福建', 1], ['天津', 1]]
热心网友
时间:2022-04-18 08:37
import collections
x=[['北', 2], ['北', 1], ['天', 1], ['福', 1]]
data = collections.defaultdict( int )
for address ,value in x:
data[ address ] += value
print( data.items( ) )
热心网友
时间:2022-04-18 10:12
遍历数组,搞个空哈希表,用地名做键,累加次数应该就可以了。最后在转换到数组,顺序可以用另外一个列表记录下来