0

我正在尝试遍历我拥有的地址列表(街道名称、城市、州、邮政编码)以获得经度和纬度

    for address in addresses:
          g = geolocator.geocode(address)
          print(g.address)
          print((g.latitude, g.longitude))
          LatLong.append((g.latitude, g.longitude))

当我运行此代码时,我收到列表中第一个地址的 long 和 lat,但随后得到:

AttributeError: 'NoneType' object has no attribute 'address'

非常感谢任何帮助。

4

2 回答 2

1

如文档中所示,当没有找到结果时,至少有一些地理定位器作为geopy回报。在假设返回结果之前,您必须检查返回值。None

于 2019-09-14T05:14:04.000 回答
0

在尝试使用它之前检查是否g是:None

for address in addresses:
  g = geolocator.geocode(address)

  if g is None:
    print ('{} could not be geocoded'.format(address))
  else:
    print(g.address)
    print((g.latitude, g.longitude))
    LatLong.append((g.latitude, g.longitude))
于 2019-09-14T05:13:26.580 回答