Поиск строк в нескольких текстовых файлах и вывод совпадающих строк в CSV.Python

Программы на Python
Ответить
Anonymous
 Поиск строк в нескольких текстовых файлах и вывод совпадающих строк в CSV.

Сообщение Anonymous »

У меня есть папка, полная сотен текстовых файлов, отформатированных следующим образом:

Код: Выделить всё

holdrod =fl__2183_180325_0045



measburn_tot =  189.260915


Я хочу использовать Python для просмотра каждого файла, поиска «holdrod» и «measburn_tot» и печати этих строк в файл CSV, чтобы они выглядели следующим образом:



заголовок 1
заголовок 2
заголовок 3
заголовок 4




holdrod =
fl__2183_180325_0045
measburn_tot =
189.260915



Пока это мой код:

Код: Выделить всё

import re
import os
from pathlib import Path
import csv

file_directory = (r'/home/work_dir/FLrods')
files = os.listdir(file_directory)

for fname in files:
if os.path.isfile(file_directory + os.sep + fname):
f = open(file_directory + os.sep + fname, 'r')
with open('output.csv', 'w') as outputCSV:
writer = csv.writer(outputCSV)
data = []
for line in open(fname, 'r').read():
search = re.compile('holdrod|measburn_tot')
if search.match(line):
data.append(line.strip())
writer.writerow(data)
Но это просто возвращает пустой CSV-файл. Кроме того, правильна ли моя переменная поиска? Разве мне не следует искать и «holdrod», и «measburn_tot», поскольку обе строки встречаются в каждом файле?

Подробнее здесь: https://stackoverflow.com/questions/798 ... nes-to-a-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»