【问题标题】:Write Geopy location to CSV file将 Geopy 位置写入 CSV 文件
【发布时间】:2016-03-09 20:25:36
【问题描述】:

我正在尝试将此geopy 对象的输出写入csv 文件,但它将每个字母放在不同的列中,并在不同的行上打印纬度和经度。我该如何解决?

我希望能够在不同时间运行此函数并将新地址打印到下一行。保存数据而不是覆盖它。这可以通过在python中写入csv来完成吗?

from geopy.geocoders import Nominatim
import csv

def loc_find(file):
'''
This function take in a user given location and gives back the address with 
city, zip code, state, county and country.
It also provides latitude and longitude.
'''
    geolocator = Nominatim()
    loc_input = raw_input("Add the location you would like data back for: ")
    location = geolocator.geocode(loc_input)
    print(location.address)
    print((location.latitude, location.longitude))

    with open(r"", 'w') as fp:
        a = csv.writer(fp)
        data = location
        a.writerows(data)    

【问题讨论】:

    标签: python csv geopy


    【解决方案1】:

    好吧,您将单个 Location 对象作为 rows(行对象列表)传递,您应该将其作为单行传递。

    替换:

    a.writerows(location)
    

    与:

    a.writerow(location) 
    

    【讨论】:

    • 效果更好,但如果我用“RedLands”这个地方运行它,我会得到美国加利福尼亚州圣贝纳迪诺县雷德兰兹 (34.0715385, -117.120993253739) 我希望每个都在自己的列中.如果在 excel 中打开,希望一行 6 列
    猜你喜欢
    • 1970-01-01
    • 2017-01-05
    • 2015-12-19
    • 2017-08-18
    • 2018-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多