Я пытаюсь написать что-то, что может анализировать txt
файл, выглядит примерно так:
TOP1|TOP2|TOP3
Group1|Value2|Value3
Group2|Value2|Value3
TAIL1|TAIL2|TAIL3
TOP
и TAIL
всегда будут иметь одинаковую структуру Однако структура Group
изменится. IE: у каждого файла есть свои группы, которые имеют свои значения.
Эти файлы имеют размер всего несколько килобайт каждый, и мне нужен способ масштабирования до 100 000+ / день синтаксического анализа файлов.
Я посмотрел на oop, но не уверен, излишне ли это для моего варианта использования.
Почему-то я чувствую, что использую простое: with open()
не самый эффективный. Кроме того, я стараюсь избегать использования целочисленной индексации для получения атрибутов файлов.
В идеале я хочу сопоставить файл с Python Dict, а затем с классом Top
, Tail
клиента. У меня также есть класс Groups
, который будет списком всех строк в файле под Group
.
Структура описывается следующим образом: FILE --> [Top, [Group1, Group2], Tail]
.
Пока у меня есть это, но не подходит:
with open('file1.txt') as file:
items = []
for line in file:
if not line.strip():
continue
d = {}
data = line.split('|')
print(data)
for val in data:
key, sep, value = val.partition(',')
d[key.strip()] = value.strip()
items.append(d)