python计算两个地址之间的距离方法


Posted in Python onJune 09, 2018

我们调用高德地图的API来计算经纬度

#计算地址经纬度
import requests
def geocode(address):
 parameters = {'address': address, 'key': 'cb649a25c1f81c1451adbeca73623251'}
 base = 'http://restapi.amap.com/v3/geocode/geo'
 response = requests.get(base, parameters)
 answer = response.json()
 print(address + "的经纬度:", answer['geocodes'][0]['location'])
 lon = float(answer['geocodes'][0]['location'].split(',')[0])
 lat = float(answer['geocodes'][0]['location'].split(',')[1])
geocode(address)

我们输入下面两个地址,得到相应的经纬度。

address1 ='上海市徐汇区桂箐路靠近华鑫天地'

address2 ='上海市徐汇区田林路200号华鑫天地C座3楼'

上海市徐汇区桂箐路靠近华鑫天地的经纬度: 121.407124,31.169677
上海市浦东新区张江高科技园的经纬度: 121.593357,31.214343
lon1 = 121.407124
lat1 = 31.169677
lon2 = 121.593357
lat2 =31.214343
#计算距离 
from math import radians, cos, sin, asin, sqrt 
# 将十进制度数转化为弧度 
lon1, lat1, lon2, lat2 = map(radians, [lon1, lat1, lon2, lat2]) 
# haversine公式 
dlon = lon2 - lon1 
dlat = lat2 - lat1 
a = sin(dlat/2)**2 + cos(lat1) * cos(lat2) * sin(dlon/2)**2 
c = 2 * asin(sqrt(a)) 
r = 6371 # 地球平均半径,单位为公里 
return c * r * 1000

最终结果如下,两个地方之间的距离约18公里

c * r * 1000 
Out[58]: 18397.59615786144

以上这篇python计算两个地址之间的距离方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python3实现的腾讯微博自动发帖小工具
Nov 11 Python
python解析json实例方法
Nov 19 Python
解决出现Incorrect integer value: '' for column 'id' at row 1的问题
Oct 29 Python
python的中异常处理机制
Aug 30 Python
使用tensorflow实现线性svm
Sep 07 Python
Python人脸识别第三方库face_recognition接口说明文档
May 03 Python
python之信息加密题目详解
Jun 26 Python
用Python调用win命令行提高工作效率的实例
Aug 14 Python
pytorch 常用函数 max ,eq说明
Jun 28 Python
浅谈OpenCV中的新函数connectedComponentsWithStats用法
Jul 05 Python
pycharm使用技巧之自动调整代码格式总结
Nov 04 Python
python批量生成身份证号到Excel的两种方法实例
Jan 14 Python
python 对dataframe下面的值进行大规模赋值方法
Jun 09 #Python
pandas 对每一列数据进行标准化的方法
Jun 09 #Python
Python实现读写INI配置文件的方法示例
Jun 09 #Python
Python实现读取机器硬件信息的方法示例
Jun 09 #Python
Python实现读取SQLServer数据并插入到MongoDB数据库的方法示例
Jun 09 #Python
Python操作mongodb数据库进行模糊查询操作示例
Jun 09 #Python
python 用lambda函数替换for循环的方法
Jun 09 #Python
You might like
MySQL修改密码方法总结
2008/03/25 PHP
PHP define函数的使用说明
2008/08/27 PHP
PHP 事务处理数据实现代码
2010/05/13 PHP
php在window iis的莫名问题的测试方法
2013/05/14 PHP
PHP对象克隆clone用法示例
2016/09/28 PHP
基于PHP的加载类操作以及其他两种魔术方法的应用实例
2017/08/28 PHP
PHP设计模式之命令模式示例详解
2020/12/20 PHP
jQuery实现异步获取json数据的2种方式
2014/08/29 Javascript
PHP+jQuery+Ajax+Mysql如何实现发表心情功能
2015/08/06 Javascript
浅谈js的html元素的父节点,子节点
2016/08/06 Javascript
JS制作图形验证码实现代码
2020/10/19 Javascript
NodeJS配置HTTPS服务实例分享
2017/02/19 NodeJs
原生js实现放大镜
2017/02/20 Javascript
vue 请求后台数据的实例代码
2017/06/22 Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
2018/05/28 Javascript
Bootstrap开发中Tab标签页切换图表显示问题的解决方法
2018/07/13 Javascript
详解JavaScript函数callee、call、apply的区别
2019/03/08 Javascript
vue3+typeScript穿梭框的实现示例
2020/12/29 Vue.js
[35:34]Liquid vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python编程中的文件操作攻略
2015/10/16 Python
Python将json文件写入ES数据库的方法
2019/04/10 Python
基于keras输出中间层结果的2种实现方式
2020/01/24 Python
django-xadmin根据当前登录用户动态设置表单字段默认值方式
2020/03/13 Python
django model 条件过滤 queryset.filter(**condtions)用法详解
2020/05/20 Python
Famous Footwear加拿大:美国多品牌运动休闲鞋店
2018/12/05 全球购物
DC Shoes澳大利亚官方网上商店:购买DC鞋子
2019/10/25 全球购物
应届毕业生应聘自荐信
2013/12/07 职场文书
自我评价的写作规则
2014/01/06 职场文书
办护照工作证明范本
2014/01/14 职场文书
体育专业自荐书
2014/05/29 职场文书
新闻发布会策划方案
2014/06/12 职场文书
预防煤气中毒方案
2014/06/16 职场文书
四风对照检查剖析材料
2014/10/07 职场文书
校友回访母校寄语
2015/02/26 职场文书
优秀大学生自荐信
2015/03/26 职场文书
springcloud整合seata
2022/05/20 Java/Android