ما مدى أسرع مكتبة IO الجديدة في Python 2.7 مقارنة بالإصدارات السابقة؟

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

  •  26-09-2019
  •  | 
  •  

سؤال

بيثون 2.7 ملاحظة تحديث يقول:

نسخة جديدة من مكتبة IO ، إعادة كتابة في C للأداء.

لقد لعبت مع Python 2.7 قليلاً ، لكنني لا أرى أي مكسب للأداء:

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

والنتيجة:

  • بيثون 2.6.5 - 12.879124022745913
  • Python 2.7 - 12.905614540395504

هل أفعل ذلك خطأ؟

هل كانت مفيدة؟

المحلول

إذا نظرت إلى 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)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top