2015-12-07 45 views
1

我是新來的python,我試圖迭代通過列表,並追加每8行從文件到列表。我將追加到這些元素並將其重寫到新文件中。我一直在運行的是從我想要的txt文件中獲取特定的部分。這裏是我的代碼:通過創建特定部分的列表遍歷文件

tester1=1 
tester2=9 
for n,line in enumerate(myList): 
    if n>(tester1) and n<(tester2): 
     tempList.append(line) 
     tester1=tester1+8 
     tester2=tester2+8 

所以我不想要行0,1。但是第2到第8行。接下來我需要它去9到17行......等等。這個當前的代碼給了我每個第八個元素在我的txt文件中,這個文件被製成了一個列表。

+0

你想用列表的列表來結束,如'[2號線,3號線,4號線,LINE5,LINE6,line7,line8] ,[line9,line10 ...]]? –

+0

是的,我正在尋找,我在正確的軌道上? – loneWolf

+0

Sorta ...所以如果你想每隔8行,除了第0行和第1行,你需要第2-7行,然後是第8-15行,然後是第16-23行,對吧? –

回答

0

在最簡單的方式,你可以這樣做:

with open('path/to/file.txt') as f: 
    next(f); next(f) # skip first two lines 
    lst = [] 
    while True: 
     try: 
      lst.append([next(f) for _ in range(8)]) 
     except StopIteration: 
      return lst