我写了一个代码,以便获得一本字典,该字典向我显示博物馆为键,而地理位置信息为值。博物馆总是从博物馆列表(df2)中获取。我几乎得到了想要的结果。但是,不幸的是,返回的字典始终具有相同的坐标。因此,值不会相应于key进行更新。

希望得到一些帮助!

def geocode(museum):
    location = geolocator.geocode(museum, exactly_one = False)
    return location

d = {}
for museum in df2:
    if geocode(museum) is False:
        d[museum] = 'Nothing found'
    else:
        d[museum] = [location[0].latitude],[location[0].longitude], [len(location)]

最佳答案

您应该存储geocode函数的返回值,然后使用它来分配它,即应根据对geocode的调用来更新位置。

在构建字典时,请尝试进行如下修改:

for museum in df2:
    loc = geocode(museum)
    if loc is None:
        d[museum] = 'Nothing found'
    else:
        d[museum] = [loc[0].latitude],[loc[0].longitude], [len(loc)]

关于python - 地理位置词典,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41243003/

10-10 05:23