2013-06-18 6 views
0

В настоящее время я пытаюсь разобрать два разных типа файлов, используя модуль csv python. Чтобы узнать, какой файл я пытаюсь разобрать, я должен прочитать первую букву второй строки. В зависимости от того, что говорит эта строка, я хотел бы перейти к строке 7 или строке 4, а затем использовать csv для чтения в данных. Я читал, что не работает для смешивания readline() и next() в файловом объекте. Есть ли другой способ перемещения вниз по линиям? Это мой текущий код, чтобы дать лучшее представление о том, что я пытаюсь:перемещаться по строкам после использования readline() python

with open(str(new_file)) as new_file: 
    new_file.next() 
    line2 = new_file.readline() 
    # Check to see which file it is 
    if line2[0] == "P": 
     # Move to line 7 
    else: 
     # Move to line 4 
    # Read in the contents of the file and get rid of whitespace 
    list_of_dicts = list(csv.DictReader(new_file, delimiter = " ", skipinitialspace = True)) 

Если кто-нибудь имеет представление о том, как справиться с этим, что бы фантастическим.

ответ

1
line2 = new_file.next() # now pointing at line 3 
if line2[0] == "P": 
    for _ in xrange(4): 
     new_file.next() # skip lines 3, 4, 5, 6 
else: 
    new_file.next() # skip line 3 only 
+1

Вы должны добавить здесь какой-нибудь контекст! – Parris

Смежные вопросы