SORU
16 EYLÜL 2008, Salı


Python dizilerini listeler daha verimlidir?

Elemanların örnekleme ve alım gelince dizilerini ve listeler arasında herhangi bir performans farkı var mı?

CEVAP
16 EYLÜL 2008, Salı


Genel olarak, dizilerini biraz daha hızlı olmasını bekleyebilirsiniz. Kesinlikle özel bir durum test etmelisiniz ancak (eğer fark programın performansını etkileyebilir eğer unutmayın, "prematüre optimizasyonu tüm kötülüklerin köküdür").

Python bu çok kolay hale getirir: timeit senin arkadaşın.

$ python -m timeit "x=(1,2,3,4,5,6,7,8)"
10000000 loops, best of 3: 0.0388 usec per loop

$ python -m timeit "x=[1,2,3,4,5,6,7,8]"
1000000 loops, best of 3: 0.363 usec per loop

ve...

$ python -m timeit -s "x=(1,2,3,4,5,6,7,8)" "y=x[3]"
10000000 loops, best of 3: 0.0938 usec per loop

$ python -m timeit -s "x=[1,2,3,4,5,6,7,8]" "y=x[3]"
10000000 loops, best of 3: 0.0649 usec per loop

Bu durumda, örnekleme daha hızlı satır için bir büyüklük sırası neredeyse, ama öğeye erişmek aslında bu liste için biraz daha hızlı! Eğer birkaç dizilerini oluşturmak ve onları birçok kez erişim birçok ediyorsanız, aslında listeleri yerine kullanmak daha hızlı olabilir.

Tabii eğer istersenizdeğiştirinbir öğe, liste kesinlikle bir öğeyi değiştirmek için tamamen yeni bir başlık oluşturmanız gerekecek bu yana daha hızlı olacaktır dizilerini sabit olduğu için).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Rhapsody

    Rhapsody

    7 ŞUBAT 2008
  • RiceBunny

    RiceBunny

    16 ŞUBAT 2006
  • YAN TV

    YAN TV

    20 EKİM 2011