SORU
17 ŞUBAT 2014, PAZARTESİ


Python, nasıl bir yineleyici üzerinde yineleme ve sonra bir tane daha?

İki farklı kullanımına, böyle bir şeyi yinelemek istiyorum:

file1 = open('file1', 'r')
file2 = open('file2', 'r')
for item in one_then_another(file1, file2):
    print item

Tüm dosya1, DOSYA2 tüm satırlar satırları yazdırmak için beklerdim.

Genel bir şey istediğim kullanımına dosyaları olmayabilir gibi, bu sadece bir örnek. İle bunu yapabileceğimi biliyorum

for item in [file1] [file2]:

ama bunu önlemek için ben tercihimi bellek, hem dosyaları okur.

CEVAP
17 ŞUBAT 2014, PAZARTESİ


Kullanım itertools.chain:

from itertools import chain
for line in chain(file1, file2):
   pass

11* *modül de benzer bir özellik sağlar:

import fileinput
for line in fileinput.input(['file1', 'file2']):
   pass

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • My Name Is Jeff

    My Name Is J

    26 ŞUBAT 2008
  • superemposed

    superemposed

    25 Aralık 2007
  • The Pet Collective

    The Pet Coll

    5 Ocak 2012