按路线旅行时间对多个地理点进行排序
创始人
2024-11-03 08:30:48
0
  1. 首先,需要将每个地点的经纬度坐标转换为可用于计算距离和路线时间的格式。可以使用Geopy库的geocoders模块来实现:
from geopy.geocoders import Nominatim
geolocator = Nominatim(user_agent="my-application")

location = geolocator.geocode("New York City")
print(location.latitude, location.longitude)
  1. 接下来,使用Google Maps API或其他地图服务的API来计算每个地点之间的路线时间。可以使用requests库向API发送请求,如下所示:
import requests

origin = "New York City"
destination = "Los Angeles"
api_key = "YOUR API KEY"

url = f"https://maps.googleapis.com/maps/api/directions/json?origin={origin}&destination={destination}&key={api_key}"

response = requests.get(url)
route_data = response.json()

travel_time = route_data["routes"][0]["legs"][0]["duration"]["text"]
print(travel_time)
  1. 将所有地点的路线时间存储在列表中,并使用Python的sorted函数按照路线时间进行排序,如下所示:
geo_points = ["New York City", "Los Angeles", "Chicago", "Houston"]
api_key = "YOUR API KEY"

travel_times = {}

for i in range(len(geo_points) - 1):
    origin = geo_points[i]
    destination = geo_points[i+1]
    
    url = f"https://maps.googleapis.com/maps/api/directions/json?origin={origin}&destination={destination}&key={api_key}"
    
    response = requests.get(url)
    route_data = response.json()
    
    travel_time = route_data["routes"][0]["legs"][0]["duration"]["text"]
    travel_times[(origin, destination)] = travel_time

sorted_geo_points = [geo_points[0]]

while len(sorted_geo_points) < len(geo_points):
    last_point = sorted_geo_points[-1]
    next_point = None
    shortest_time = None
    
    for point in geo_points:
        if point not in sorted

相关内容

热门资讯

据相关数据显示!wepoker... 据相关数据显示!wepoker透视底牌脚本,山西扣点点app技巧,总是真的是有辅助脚本(哔哩哔哩)山...
有挂透视!哈糖大菠萝破解器,拱... 有挂透视!哈糖大菠萝破解器,拱趴大菠萝有什么挂(透视)本来一直都是有辅助教程(哔哩哔哩)进入游戏-大...
这一现象值得深思!微扑克微乐辅... 这一现象值得深思!微扑克微乐辅助,闲聚鱼虾蟹辅助器软件,本来存在有辅助攻略(哔哩哔哩)一、闲聚鱼虾蟹...
辅助透视!红龙poker辅助器... 辅助透视!红龙poker辅助器免费观看,哈糖大菠萝怎么挂(透视)都是一直都是有辅助工具(哔哩哔哩)1...
据通报!wepoker公共底牌... 据通报!wepoker公共底牌,陕麻圈辅助工具,一直存在有辅助软件(哔哩哔哩)1、任何陕麻圈辅助工具...
辅助透视!steampoker... 辅助透视!steampokermaster辅助,约局吧怎么看有没有挂(透视)竟然是真的有辅助攻略(哔...
近日!wepoker辅助器激活... 近日!wepoker辅助器激活码,掌中乐辅助器,果然有辅助脚本(哔哩哔哩)暗藏猫腻,小编详细说明掌中...
推荐透视!werplan免费挂... 推荐透视!werplan免费挂下载,约局吧游戏挂(透视)确实一直总是有辅助方法(哔哩哔哩)1、游戏颠...
经调查!wepoker透视挂底... 经调查!wepoker透视挂底牌,插件脚本模板,一直真的是有辅助方法(哔哩哔哩);1、下载好插件脚本...
了解透视!竞技联盟辅助插件,p... 了解透视!竞技联盟辅助插件,pokernow辅助工具(透视)一贯存在有辅助app(哔哩哔哩)1、竞技...