По сути, у меня есть список, в котором указан номер строки файла CSV, и я хочу объединить строки, следующие за списком.
Например, мой список [0, 7, 10, 11, 27, 31]
Это означает, что я хочу объединить свои строки из строки 1 в строку 7 в одну строку.
Строки от 8 до 10 в один ряд.
Строки с 11 по 11 (та же самая строка, поэтому она просто ничего не будет делать)
Строка от 12 до 27
Строка от 28 до 31
Я пытался использовать цикл while и islice из itertools. Тем не менее, я получаю только вывод строки 1 в строку 7.
Вот мой код.
import csv
from itertools import islice
with open('csvtest.csv', 'rb') as f:
reader = csv.reader(f)
#row1 = next(reader)
merged = []
list = [0, 7, 10, 11, 27, 31]
x=0
while x < len(list):
for line in islice(f, list[x], list[x+1]):
#print line1
line = line.rstrip()
merged.append(line)
x += 1
print merged #gives ['fsfs', 'sf', '1231', 'afsa', '', '', 'asfasfsaf;0'] which is lines 1 to 7
Кто-нибудь даст мне знать, что случилось с моим циклом while? Или это проблема с частью списка дополнений?