Advertisement
rodolpheg

Untitled

Sep 29th, 2020
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.99 KB | None | 0 0
  1. # Je crée des données aléatoires, j'importe donc le module random
  2. import random
  3. random.seed(1)
  4.  
  5. # Q1 : Quels véhicules ont coûté le plus cher et le moins en réparations en 2018 ?
  6. print("Question 1")
  7.  
  8. # 1.1) Créer les données
  9. data = []
  10. for v in ['Voiture A','Voiture B','Voiture C','Voiture D']:
  11. for a in [2016, 2017, 2018, 2019, 2020]:
  12. data.append([v,a,random.randint(100,2000)])
  13. random.shuffle(data)
  14.  
  15. # 1.2) Créer une liste des coûts de tous les véhicules en 2018
  16. # Créer une liste vite qui recueillera les informations
  17. cost_2018 = []
  18.  
  19. # passer à travers les données
  20. for l in data:
  21. # si la date est égale à 2018, j'ajoute les données à la liste
  22. if l[1] == 2018:
  23. cost_2018.append([l[0],l[2]])
  24.  
  25. # 1.3) Trier cette liste par ordre croissant avec la commande : liste.sort(key = lambda x: x[position])
  26.  
  27. cost_2018.sort(key = lambda x: x[1])
  28.  
  29. # 1.4) Extraire le premier et le dernier élément de la liste
  30.  
  31. print(cost_2018[0])
  32. print(cost_2018[-1])
  33.  
  34. # Q2 : Quel véhicule a connu la plus grande différence de coût entre 2017 et 2020 ?
  35. print("\nQuestion 2")
  36.  
  37. # 2.1) Lire les données
  38. # Déjà dans data
  39.  
  40. # 2.2) Créer un dictionnaire de dictionnaire des coûts par véhicule et par année
  41. dictio = {}
  42.  
  43. # itérer à travers les données bruts
  44. for l in data:
  45. # Si "dictio" n'a pas encore de dictionnaire pour la clé de l'année....
  46. if l[0] not in dictio:
  47. #... il crée un dictionnaire vide
  48. dictio[l[0]] = {}
  49. # maintenant que nous somme sûr qu'il existe un dictionnaire pour cette année, je peux lui attribuer un élément clé = "véhicule", valeur = coût pour cette année
  50. dictio[l[0]][l[1]] = l[2]
  51.  
  52. # 2.3) Extraire les données pertinentes du dictionnaire (dans une liste)
  53.  
  54. # Je crée une liste vide
  55. diff = []
  56.  
  57. for veh, v in dictio.items():
  58. diff.append([veh, v[2020] - v[2017]])
  59.  
  60. # 2.4) Extraire le premier et le dernier élément de la liste
  61.  
  62. diff.sort(key = lambda x: x[1])
  63. print(diff[-1])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement