SORU
8 Mart 2011, Salı


Nasıl Python jeneratör veya bir listeden ilk N öğeleri almak için?

ederim

var top5 = array.Take(5);

Nasıl Python ile bunu yapmak için?

CEVAP
8 Mart 2011, Salı


Bir jeneratör doğrudan Python dilim edemezsin. Bunu yapmak için bir yardımcı işlev olarak itertools.islice() kullanabilirsiniz. itertools.islice(generator, start, stop, step), jeneratör kısmen egzoz olacak Dilimleme Unutmayın. Eğer bütün jeneratör sağlam tutmak istiyorsanız, belki de dönüş demet veya bir liste ilk haline: result = tuple(generator)

Normal bir listesi için, sadece Dilimleme düzenli kullanabilirsiniz. my_list[start:stop:step] Atlayabilirsiniz "adım" ya da/bu dilim uygulamaları birinde durdurmak başlatın.

 my_list[:5] # grab the first five elements
 my_list[-5:] # grab the last five elements
           # (negative list indices start from the right side)

 import itertools
 itertools.islice(my_list, 0, 5) # grab the first five elements

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Adam Outler

    Adam Outler

    19 EKİM 2006
  • Joe DiFeo

    Joe DiFeo

    7 AĞUSTOS 2012
  • Top Gear

    Top Gear

    27 Mart 2006