2014-09-14 3 views

ответ

2

Вам нужно придумать способ обнаружения начала и конца соответствующего раздела файла; модуль csv не содержит встроенного механизма для этого сам по себе, потому что нет общего и однозначного разделителя для начала и конца определенного раздела.

Я должен поставить перед собой вопрос о том, как мутировать множество CSV-файлов вместе. Есть ли причина, по которой вы не можете разделить разделы на отдельные файлы?

0

Нет на складе csv модуль на этот вопрос. Кроме того, вы можете использовать модуль re для регулярного выражения.

Пример:

with open("file.csv") as f: 
    data = f.readlines() 
cities = [re.findall("(city.*)", line)[0] for line in data] 
print cities 

он должен напечатать все строки начинаются с ключевым словом "городом".

+0

Добро пожаловать в переполнение стека. Вскоре прочитайте страницу [О программе]. Что случилось с [13.1 Чтение и запись файлов CSV] (https://docs.python.org/2/library/csv.html) для Python 2.x и [14.1 Чтение и запись файлов CSV] (https: // docs .python.org/3/library/csv.html? highlight = csv) для Python 3.x? –

+0

@JonathanLeffler ах, я не искал модуль 'csv' в любое время раньше. Но формат, указанный в этом вопросе, не похож на '.csv' – knh170

+1

Да ... CSV - это злоупотребление термином. Иногда, как здесь, вероятно, лучше было бы назвать формат DSV - разделительный разделитель. Похоже, что разделитель - это, вероятно, вкладка. Модуль CSV Python может обрабатывать несколько вариантов в формате CSV, и, в частности, он может обрабатывать этот - или, по крайней мере, один из его разделов, но, возможно, не два застрявших вместе. –

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