python - 值列表的运行函数
问题描述
我创建了一个函数,它使用 OSM API 获取有关坐标的信息。当只有 1 个 lat 和 lng 对时,它工作正常,如下所示:
import pandas as pd
import urllib.request, json
radius = 1000
latitude = -33.8737909
longitude = 151.2055035
def get_results(latitude,longitude):
overpass_url = "http://overpass-api.de/api/interpreter"
overpass_query = '\n[out:json];\n(node["public_transport"](around:{0},{1},{2});\n way["public_transport"](around:{0},{1},{2});\n rel["public_transport"](around:{0},{1},{2});\n);\nout center;\n'.format(radius,latitude,longitude)
response = requests.get(overpass_url,params={'data': overpass_query})
data = response.json()
output = {
"public_transport":[tags['tags'].get('name') for tags in data['elements']]
}
return output
results =[]
for address in addresses:
geocode_result = get_results(latitude,longitude)
results.append(geocode_result)
print(results)
当我需要为多个 lat 和 lng 对运行上述代码并将所有结果附加在一起时,就会出现问题。为了简单起见,假设我有两对 lat 和 lng 值的列表:
latitude = [-33.8737909, 47.36865]
longitude = [151.2055035, 8.539182]
我写的功能不再起作用。我很困惑为什么,我怀疑这与我如何列出 lng 和 lat 值有关?也许还有别的?
任何帮助表示赞赏。
解决方案
推荐阅读
- flutter - Flutter 为 HTML 加载本地资源
- c - 操作系统会向设备请求中断吗?
- angular - 为应用程序中的所有输入设置默认指令
- postman - 检查 Postman 测试用例中的空值 .not.eql() 或 .not.equal() 不起作用
- apache-flink - Flink 如何使用从 Avro 输入数据推断出的模式创建表
- node.js - 从查询返回数据时,我们如何获取唯一 ID
- php - window.location.replace() 和 window.location 在 jquery 代码中不起作用
- c++ - 用于映射一对一关系的 STL 类型?
- r - R - 如何从插值等高线图中获取数据
- angular - keycloak-angular:多租户应用程序