SORU
11 Kasım 2010, PERŞEMBE


verimli dairesel tampon?

Python (tampon tamsayı değerlerin ortalamasını alma amacı ile) circular buffer etkili oluşturmak istiyorum.

Bu verimli bir şekilde değerleri toplamak için bir liste kullanmak için mi?

def add_to_buffer( self, num ):
    self.mylist.pop( 0 )
    self.mylist.append( num )

Daha verimli (ve neden) ne olurdu?

CEVAP
11 Kasım 2010, PERŞEMBE


maxlen arg collections.deque kullanırdım

>>> import collections
>>> d = collections.deque(maxlen=10)
>>> d
deque([], maxlen=10)
>>> for i in xrange(20):
...     d.append(i)
... 
>>> d
deque([10, 11, 12, 13, 14, 15, 16, 17, 18, 19], maxlen=10)

Ne istiyorsun benzer deque docs recipe var. En verimli olduğunu iddia benim tamamen birinci sınıf kod marş dışarı alışkanlığı son derece yetenekli bir ekip tarafından C uygulanan bu gerçeğine dayanmaktadır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DrakeVEVO

    DrakeVEVO

    17 AĞUSTOS 2009
  • Maya Learning Channel

    Maya Learnin

    23 HAZİRAN 2010
  • UsherVEVO

    UsherVEVO

    15 EKİM 2009