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 相关文章推荐
用Python编写一个简单的Lisp解释器的教程
Apr 03 Python
Python使用matplotlib实现在坐标系中画一个矩形的方法
May 20 Python
简单了解Python下用于监视文件系统的pyinotify包
Nov 13 Python
Python三种遍历文件目录的方法实例代码
Jan 19 Python
pandas 实现字典转换成DataFrame的方法
Jul 04 Python
python一行sql太长折成多行并且有多个参数的方法
Jul 19 Python
python 实现交换两个列表元素的位置示例
Jun 26 Python
python DataFrame转dict字典过程详解
Dec 26 Python
TFRecord文件查看包含的所有Features代码
Feb 17 Python
python多线程实现同时执行两个while循环的操作
May 02 Python
5款实用的python 工具推荐
Oct 13 Python
Python Django 后台管理之后台模型属性详解
Apr 25 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
聊天室php&mysql(一)
2006/10/09 PHP
PHP会员找回密码功能的简单实现
2016/09/05 PHP
从父页面读取和操作iframe中内容方法
2009/07/25 Javascript
jQuery的Ajax时无响应数据的解决方法
2010/05/25 Javascript
js删除所有的cookie的代码
2010/11/25 Javascript
js 如何实现对数据库的增删改查
2012/11/23 Javascript
js通过地址栏给action传值(中文乱码全是问号)
2013/05/02 Javascript
JavaScript关闭当前页面(窗口)不带任何提示
2014/03/26 Javascript
JQuery工具函数汇总
2015/06/15 Javascript
JavaScript电子时钟倒计时第二款
2016/01/10 Javascript
使用Angular缓存父页面数据的方法
2017/01/03 Javascript
JavaScript实现为事件句柄绑定监听函数的方法分析
2017/11/14 Javascript
基于jquery的on和click的区别详解
2018/01/15 jQuery
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
Vue在页面数据渲染完成之后的调用方法
2018/09/11 Javascript
vue主动刷新页面及列表数据删除后的刷新实例
2018/09/16 Javascript
微信小程序实现卡片左右滑动效果的示例代码
2019/05/01 Javascript
微信小程序 高德地图路线规划实现过程详解
2019/08/05 Javascript
jquery实现手风琴案例
2020/05/04 jQuery
用vue 实现手机触屏滑动功能
2020/05/28 Javascript
[05:31]DOTA2英雄梦之声_第08期_莉娜
2014/06/23 DOTA
Python之eval()函数危险性浅析
2014/07/03 Python
Python 3 实现定义跨模块的全局变量和使用教程
2019/07/07 Python
django 连接数据库 sqlite的例子
2019/08/14 Python
tensorflow求导和梯度计算实例
2020/01/23 Python
Python Django中间件使用原理及流程分析
2020/06/13 Python
video结合canvas实现视频在线截图功能
2018/06/25 HTML / CSS
在HTML5 Canvas中放入图片和保存为图片的方法
2014/05/03 HTML / CSS
Html5监听手机摇一摇事件的实现
2019/11/07 HTML / CSS
Alba Moda德国网上商店:意大利时尚女装销售
2016/11/14 全球购物
百度JavaScript笔试题
2015/01/15 面试题
小学教师节活动方案
2014/01/31 职场文书
领导党性分析材料
2014/02/15 职场文书
怀念母亲教学反思
2014/04/28 职场文书
领导干部学习“三严三实”思想汇报
2014/09/15 职场文书
「魔法少女伊莉雅」美游粘土人开订
2022/03/21 日漫