Я пытаюсь прочитать данные из текстового файла, который выглядит как json или вложенные словари. Я пробовал несколько подходов, в некоторых строках отсутствуют кавычки. Я попытался добавить кавычки и импортировать как файл json, но это не сработало. Мне нужно импортировать текстовый файл, прочитать значение «b» и «TYPE» и вставить его в 2 столбца, columnA (значение TYPE) и columnB (значение «b») из каждой части, то есть от PART1 до PART300, я вставил часть txt. файл ниже
Я также пытался преобразовать этот текстовый файл как словари для чтения как ключ, значение, но это не удалось. Я потратил на это несколько дней, пожалуйста, помогите
Part1 :
{
PartA :
{
PartA1 :
{
a: 1
b : 5
c: -115
d : -73
e : 1
f : -14
g : -40
h : 0
i : "300"
TYPE : "A1”
}
PartB2 :
{
a: 1
b : 4
c: -1
d : -7
e : 1
f : -17
g : -40
h : 0
i : "302"
TYPE : "A2”
}
Part2 :
{
PartB :
{
PartB1 :
{
a: 1
b : 3
c: -115
d : -73
e : 1
f : -130
g : -40
h : 0
i : "300"
TYPE : "B1”
}
Код:
import re
filepath='sample.txt'
with open(filepath, "r") as textfile:
with open(filepath + "_output.txt", "a") as output:
for line in textfile:
if re.search("b :", line):
output.write(line)
elif re.search("KEY :", line):
output.write(line)
Текущий вывод:
5
A1
4
A2
с этим кодом, если 5 принадлежит A1
словарь, он ищет только "b: "
, это неправильный метод, но я не могу придумать ничего другого.
Ожидаемый результат:
Type b
A1 5
A2 4
B1 3