SORU
7 AĞUSTOS 2009, Cuma


Liste Üreteci Vs Python. Göster

Liste üreteci ya da tam tersi fazla map() kullanmayı tercih için bir sebep var mı? Genelde daha etkin olduğunu ya da genel olarak daha pythonic düşündün mü?

CEVAP
7 AĞUSTOS 2009, Cuma


map mikroskobik daha hızlı bazı durumlarda bu amaç için bir lambda yapma ama harita aynı işlevi ve bir listcomp kullanmadığınız zaman) olabilir. Liste üreteçleri (hepsi değil) pythonistas onları daha doğrudan ve daha net düşünün diğer durumlarda hızlı ve en olabilir.

Tam olarak aynı işlevi kullanırken göster küçük hız avantajı bir örnek:

$ python -mtimeit -s'xs=range(10)' 'map(hex, xs)'
100000 loops, best of 3: 4.86 usec per loop
$ python -mtimeit -s'xs=range(10)' '[hex(x) for x in xs]'
100000 loops, best of 3: 5.58 usec per loop

Performans karşılaştırma göster lambda gerektiğinde tamamen geri alır nasıl bir örnek:

$ python -mtimeit -s'xs=range(10)' 'map(lambda x: x 2, xs)'
100000 loops, best of 3: 4.24 usec per loop
$ python -mtimeit -s'xs=range(10)' '[x 2 for x in xs]'
100000 loops, best of 3: 2.32 usec per loop

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DorkmanScott

    DorkmanScott

    14 NİSAN 2006
  • failblog

    failblog

    17 HAZİRAN 2008
  • Kanál používateľa McsFuego

    Kanál použ

    12 EKİM 2011