Projet de cours

HackeurNul -  
Chris 94 Messages postés 54087 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
Je suis bloqué à la fin de mon programme que j'ai fait en python.
Le but de mon programme est de récupérer les coordonnées des emplacement de vélib et des restaurants. Ensuite j'ai calculé la distance entre tout les vélib et les restaurants. Je l'ai rentré dans une liste pour la remettre dans l'ordre.
Je veux garder la liste dans le désordre et celle dans l'ordre pour retrouver quelle distance correspond à quel restaurants. Puis je veux recupérer les trois emplacement de vélib les plus proches des restaurants et retrouver les coordonnées des restaurants.
Mais je suis bloqués à la fin.

Voici mon programme :

import json, requests
from math import sqrt
i=0
url = 'http://opendata.paris.fr/api/records/1.0/search/?dataset=velib-emplacement-des-stations&rows=-1'
resp = requests.get(url, verify=True) #le truc de dabitude
dico = resp.json()
data=dico.get("records")
lst_velib=[]
for i in data:         #boucle pour prendre tout les data
    data0=i
    data1=data0.get("geometry") #on recupere tout dans geometry
    data2=data1.get("coordinates") # et la de coordiantes
    Xa=data2[0]
    Ya=data2[1]
    lst_velib.append([Xa,Ya])
y=0
url = 'http://opendata.paris.fr/api/records/1.0/search/?dataset=restaurants-casvp&rows=-1&facet=code&facet=type'
resp = requests.get(url, verify=True) #le truc de dabitude
dico = resp.json()
data=dico.get("records")
lst_restau=[]
for y in data:         #boucle pour prendre tout les data
    try:
        dataa=y
        datab=dataa.get("geometry") #on recupere tout dans geometry
        datac=datab.get("coordinates") # et la de coordiantes
        Xb=datac[0]
        Yb=datac[1]
    except:
        print()
    lst_restau.append([Xb,Yb])
r=40030173
w=0
g=0
distance=[]

for w in range (len(lst_velib)):
    for g in range (len(lst_restau)):
        f1=sqrt((lst_velib[w][0]-lst_restau[g][0])**2+(lst_velib[w][1]-lst_restau[g][1])**2)*r
        distance.append(f1)
        #print(distance)
dis=distance
dis.sort()

print(dis)
A voir également:

1 réponse

Chris 94 Messages postés 54087 Date d'inscription   Statut Modérateur Dernière intervention   7 345
 
0