python計算兩個位址之間的距離方法

2022-09-26 21:18:09 字數 1271 閱讀 9200

我們呼叫高德地圖的api來計算經緯度

#計算位址經緯度

import requests

def geocode(address):

parameters =

base = ''

response = requests.get(base, parameters)

answer = response.json()

print(address + "的經緯度:", answer['geocodes'][0]['location'])

lon = float(answe程式設計客棧r['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.21

lon1 = 121.407124

lat1 = 31.169677

lon2 = 121.593357

lat2 =31.214343

#計算距離

fwww.cppcns.comrom math import radians, cos, sin, asin, sqrt

# 將十進位制度數轉化為弧度

lon1, lat1, lon2, lat2 = map(radians, [lon1, lat1, lon2, lat2])

# h**ersine公式

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

本文位址: /jiaoben/python/229865.html

Python計算兩個日期之間天數

有的時候要統計兩個日期之間的相距天數,可能有很多種方法,但使用datetime模組的datetime方法無疑是裡面比較簡單的,具體 如下 import datetime d1 datetime.datetime 2018,10,31 第乙個日期 d2 datetime.datetime 2019,0...

Python計算兩個日期之間相差的天數

python提供的有關時間的庫可以幫助我們方便地計算出兩個日期之間的天數,那麼不使用python提供的庫該怎麼計算呢,筆者這裡想了一種方法,以較早日期所在年的第一天作為起點,分別計算兩個日期相對這一天的天數,然後把得到的相對天數相減,這樣就能得到兩個日期之間相差的天數。import numpy as...

計算兩個年份之間的月份

僅為測試,根據實際情況.public class test calendar startcalendar calendar.getinstance startcalendar.settime start calendar endcalendar calendar.getinstance endcal...