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 相关文章推荐
[原创]pip和pygal的安装实例教程
Dec 07 Python
Python返回数组/List长度的实例
Jun 23 Python
对Python中plt的画图函数详解
Nov 07 Python
python+flask实现API的方法
Nov 21 Python
Pandas之Dropna滤除缺失数据的实现方法
Jun 25 Python
对python中的os.getpid()和os.fork()函数详解
Aug 08 Python
Python实现隐马尔可夫模型的前向后向算法的示例代码
Dec 31 Python
用Python生成HTML表格的方法示例
Mar 06 Python
使用Python操作MySQL的小技巧
Sep 10 Python
用Python制作灯光秀短视频的思路详解
Apr 13 Python
用Python生成会跳舞的美女
Jan 18 Python
Python 数据可视化神器Pyecharts绘制图像练习
Feb 28 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
解析Win7 XAMPP apache无法启动的问题
2013/06/26 PHP
PHP迭代器和迭代的实现与使用方法分析
2018/04/19 PHP
PHP+百度AI OCR文字识别实现了图片的文字识别功能
2019/05/08 PHP
JavaScript 继承详解(四)
2009/07/13 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
jquery动态加载图片数据练习代码
2011/08/04 Javascript
JS继承--原型链继承和类式继承
2013/04/08 Javascript
Node.js生成HttpStatusCode辅助类发布到npm
2013/04/09 Javascript
jQuery实现的仿select功能代码
2015/08/19 Javascript
用自定义图片代替原生checkbox实现全选,删除以及提交的方法
2016/10/18 Javascript
关于Vue.js一些问题和思考学习笔记(1)
2016/12/02 Javascript
BootstrapValidator超详细教程(推荐)
2016/12/07 Javascript
bootstrap 模态框(modal)实现水平垂直居中显示
2017/01/23 Javascript
electron中使用bootstrap的示例代码
2018/11/06 Javascript
微信小程序左滑删除功能开发案例详解
2018/11/12 Javascript
vue图片上传本地预览组件使用详解
2019/02/20 Javascript
vue使用高德地图点击下钻上浮效果的实现思路
2019/10/12 Javascript
原生JS与JQ获取元素的区别详解
2020/02/13 Javascript
ant-design-vue 时间选择器赋值默认时间的操作
2020/10/27 Javascript
在Vue中使用Viser说明(基于AntV-G2可视化引擎)
2020/10/28 Javascript
python实现ip查询示例
2014/03/26 Python
python使用多线程不断刷新网页的方法
2015/03/31 Python
python实现判断数组是否包含指定元素的方法
2015/07/15 Python
Python实现类似jQuery使用中的链式调用的示例
2016/06/16 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
python实现复制大量文件功能
2019/08/31 Python
Tensorflow实现将标签变为one-hot形式
2020/05/22 Python
详解Python多线程下的list
2020/07/03 Python
python中封包建立过程实例
2021/02/18 Python
曼城官方网上商店:Manchester City
2019/09/10 全球购物
美食节目策划方案
2014/05/31 职场文书
初中学校对照检查材料
2014/08/19 职场文书
优秀教师个人材料
2014/12/15 职场文书
万里长城导游词
2015/01/30 职场文书
2015国庆节宣传语
2015/07/14 职场文书
创业计划书之香辣虾火锅
2019/09/23 职场文书