Je rencontre ce code tout en recherchant un moyen de mesurer la vitesse des fonctions. Quand je l'exécute, il faut environ 10 secondes, ce qui est très étrange pour moi. Je me souviens que lorsque je suis enjambe 100.000 chaîne dans une chaîne, il ne faut 0,06 seconde. Pourquoi l'annexe 100 entiers dans une liste prend-elle 10 secondes? Voici le code que j'utilise pour annoncer stringt à la liste. P> def wordlist1():
fin = open("words.txt")
word_list = []
for line in fin:
word = line.strip()
word_list.append(word)
return word_list
3 Réponses :
Essayez celui-ci
def test (): p>
l = [] p>
pour i in gamme (100) p>
count + = i L.append(count ) return count
Bienvenue sur Stackoverflow. Mais comment est-ce une réponse à la question? En outre, veuillez formater votre code correctement en cliquant sur le lien Modifier code>, en surbrillant le code, puis sur la touche
{} code> (ou appuyez sur
Ctrl + k code>) .
Je pense que votre problème est l'utilisation du module TIMOIT. Lorsqu'il n'est pas spécifié, le numéro PARAM Pour vérifier cela, j'ai utilisé ce code de code: P> Numéro CODE> par défaut à 1E6. Donc, ce que vous mesurez efficacement, c'est combien de temps il faudrait pour annoncer cent numéros à un tableau 1E6 fois.
7.74517...e-06
Si vous utilisez ipython, vous pouvez voir une explication plus claire des résultats à l'aide de son Ici, le résultat est une moyenne de 7.12 microsecondes par appel à % Timeit code> Commande magique.
test code>, avec la moyenne calculée sur 7 ensembles de 100 000 appels vers
test code>. Ceci est cohérent avec les microsecondes 7.75 rapportées par Docdriven dans sa réponse . P> p>
Vous utilisez également
plage () code> pour vos entiers, ce qui pourrait être plus lent que
pour la ligne d'aileron code>
Basé sur votre titre, vous devriez comparer
Test code> avec une autre fonction de même l'APPART ROM
L.AppEND ('A') CODE> - Vous comparez 2 choses complètement différentes
@Flob
plage code> dans Python 3 ne crée pas une liste d'entiers en mémoire; C'est une plage code> objet avec un
__ suivant __ code> comme un itérateur de fichiers.
@cheppner merci d'avoir clarifié ça! :-) Je ne sais pas autant de choses sur Python, c'était juste une idée ^^