atn10
Answered

Laurentvidal.fr est l'endroit idéal pour trouver des réponses rapides et précises à toutes vos questions. Rejoignez notre plateforme pour obtenir des réponses fiables à vos interrogations grâce à une vaste communauté d'experts. Découvrez la facilité d'obtenir des réponses rapides et précises à vos questions grâce à l'aide de professionnels sur notre plateforme.

Bonjour,

pouvez vous m'aider à effectuer la fonction de la partie 3. "Le module time" svp
voici ma fonction remplissage_aléatoire:
from random import randint
def remplissage_aleatoire(n):
liste=[]
for i in range(n):
liste.append(randint(0,100))
return liste

je bloque à la question 3.
merci d'avance


Sagot :

Bonjour,

from random import randint

import time

time.time()

def remplissage_aleatoire(n):

   liste = []

   for i in range(n):

       liste.append(randint(0, 100))

   return liste

def temps_execution_aleatoire():

   t_initiale = time.time() #On récupère le temps avant l'exécution de la fonction.

   remplissage_aleatoire(100)

   return time.time() - t_initiale #On récupère le temps après l'exécution auquel on soustrait le temps initiale pour récupérer le temps d'exécution de la fonction.

Lorsque tu exécutes temps_execution_aleatoire(), il ne faut pas être surpris de voir 0.0, c'est juste que la fonction remplissage_aleatoire() est très rapide. Si tu veux voir un temps plus élevé, tu peux augmenter la valeur de n (avec n = 1000000, j'obtiens un temps de 1,5468s donc avec n = 100 tu vois bien que c'est très très proche de 0).

Pour la fonction remplissage_aleatoire(n) on aurait aussi pu la définir en utilisant les listes en compréhension:

def remplissage_aleatoire(n):

   return [randint(0, 100) for i in range(n)]

Mais comme tu l'as fait convient très bien (ça fait plus "scolaire"), c'est juste pour que tu découvres de nouvelles choses ;).