Combien est plus rapide nouvelle bibliothèque IO Python 2.7 par rapport aux versions antérieures?

StackOverflow https://stackoverflow.com/questions/3412931

  •  26-09-2019
  •  | 
  •  

Question

Le mise à jour Note dit:

  

Une nouvelle version de la bibliothèque io, réécrit en C pour la performance.

Je l'ai joué avec Python 2.7 un peu, mais je ne vois pas de gain de performance:

>>> from timeit import Timer
>>> t = Timer('f = open("E:\\db.txt", "r"); f.read(); f.close()')
>>> t.timeit(10000)

Et le résultat:

  
      
  • Python 2.6.5 - 12,879124022745913
  •   
  • Python 2,7-12,905614540395504
  •   

Suis-je le fais mal?

Était-ce utile?

La solution

Si vous regardez http://docs.python.org/library/io.html , le procédé de open() dans le module de io n'a pas été utilisé par défaut pour ouvrir des fichiers en python 2.x Il était seulement dans 3.x python qui rend l'utilisation des open() io.open().

Essayez:

from timeit import Timer
t = Timer('f = io.open("E:\\db.txt", "r"); f.read(); f.close()', 'import io')
t.timeit(10000)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top