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

  • CasinoRoyaleMovie's channel

    CasinoRoyale

    1 AĞUSTOS 2006
  • monkophile

    monkophile

    25 Temmuz 2007
  • Press Start

    Press Start

    4 HAZİRAN 2006