Насколько быстрее новая библиотека ввода-вывода Python 2.7 по сравнению с более ранними версиями? - PullRequest
1 голос
/ 05 августа 2010

В обновлении Python 2.7 написано:

Новая версия библиотеки io, переписанная на языке C для повышения производительности.

I 'Я немного поиграл с Python 2.7, но я не вижу никакого увеличения производительности:

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

И результат:

  • Python 2.6.5 - 12.879124022745913
  • Python 2.7 - 12.905614540395504

Я делаю это неправильно?

1 Ответ

4 голосов
/ 05 августа 2010

Если вы посмотрите на http://docs.python.org/library/io.html,, метод open() в модуле io по умолчанию не используется для открытия файлов в python 2.x.Это было только в Python 3.x, который заставляет open() использовать io.open().

Попробуйте:

from timeit import Timer
t = Timer('f = io.open("E:\\db.txt", "r"); f.read(); f.close()', 'import io')
t.timeit(10000)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...