Informatique

Question

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
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

1 Réponse

  • 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 ;).