Geopy 没有所有相同的地址键

如何检测location.raw["address"]字典中缺少的键。这是因为,某些地址没有['city'] or ['road']密钥 :(


我很难将数据保存在 Python 数据帧中。


这是我的代码:


from geopy.geocoders import Nominatim


r=[]

h=[] #empty list

c=[]


for i in df['coordinates']:

    loc=geolocator.reverse("%s"%i,timeout=120)

    print(loc)



    if loc.raw["address"]["road"] == None: #i tried use this way, not works

        r.append(" ")

        print("masuk 1")


    else: 

        road=loc.raw["address"]["road"]

        r.append(road)

        print("masuk 2")



    ham=loc.raw["address"]

    name=loc.raw["display_name"]



    h.append(ham)

    c.append(name)


df = pd.DataFrame({'text':text,'city':c,'neighbourhood':h})


白板的微信
浏览 156回答 1
1回答

喵喔喔

您可以使用in关键字来检查密钥是否出现在dict:a = {1:2, 'x': [3,4]}print(1 in a) # Trueprint(2 in a) # Falseprint('x' in a) # True此外,dict对象有get方法,如果键不存在,它会返回一些值:a.get(1) # 2a.get(2) # None -- default valuea.get(2, 'n/a') # 'n/a'
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python