我正在尝试连接google的geocode api和githubapi来解析用户的位置并从中创建一个列表。
我要创建的数组(列表)如下:
location, lat, lon, count
San Francisco, x, y, 4
Mumbai, x1, y1, 5
其中location、lat和lon是从Google地理代码中解析出来的,count是该位置的出现次数。每次添加一个新的位置:如果它存在于列表中,则计数被递增,否则它被添加到具有位置、LAT、Lon的数组(列表)中,并且计数应该是1。
另一个例子:
location, lat, lon, count
Miami x2, y2, 1 #first occurrence
San Francisco, x, y, 4 #occurred 4 times already
Mumbai, x1, y1, 5 #occurred 5 times already
Cairo, x3, y3, 1 #first occurrence
我已经可以从github获取用户的位置,也可以从google获取地理编码数据。我只需要用python创建这个数组,我正在努力。
有人能帮我吗?谢谢。
最佳答案
使用collections.Counter
,您可以:
from collections import Counter
# initial values
c=Counter({("Mumbai", 1, 2):5, ("San Francisco", 3,4): 4})
#adding entries
c.update([('Mumbai', 1, 2)])
print c # Counter({('Mumbai', 1, 2): 6, ('San Francisco', 3, 4): 4})
c.update([('Mumbai', 1, 2), ("San Diego", 5,6)])
print c #Counter({('Mumbai', 1, 2): 7, ('San Francisco', 3, 4): 4, ('San Diego', 5, 6): 1})