У меня есть выходной файл txt, в котором я хотел бы сохранить некоторые значения в строках.
TBabs*powerlaw
2 PhoIndex 2.427 3.447 FFFFFFFFF
3 norm 8.454501369e-06 1.387320996e-05 FFFFFFFFF
0p3_1p5abs 1.512967493e-14 1.326152487e-14 1.822308766e-14
0p3_1p5plunabs -13.50750953 -13.21090697 FFFFFFFFF
TBabs(powerlaw + diskbb)
Ftest: 11.9512537 14 11.9512537 12 1
В приведенном выше файле txt я хотел бы сохранить значения PhoIndex (2.427 и 3.447 ). Я пробовал следующее:
my_list=[]
filepath = 'output'
with open(filepath) as fp:
for line in fp:
if line=="PhoIndex"
my_list.append(line)
Я не хочу индексировать их в зависимости от их порядка, потому что выходные данные являются Dynami c и PhoIndex может быть в другой строке. Таким образом, единственный логический способ, который я могу придумать, - это если какая-либо переменная является eq для этого ключевого слова, хранить значения в этой строке. На самом деле, самая полезная вещь - создать пустой dictionary
и заполнить его значениями в выводе, такими как
До l oop:
source = {
'model': '',
'PhoIndex': np.array([]),
'norm': np.array([]),
'0p3_1p5abs': np.array([]),
'0p3_1p5plunabs': np.array([]),
}
После l oop:
source = {
'model': 'TBabs*powerlaw',
'PhoIndex': np.array([2.427, 3.447]),
'norm': np.array([8.454501369e-06, 1.387320996e-05]),
'0p3_1p5abs': np.array([1.512967493e-14, 1.326152487e-14,1.822308766e-14]),
'0p3_1p5plunabs': np.array([0p3_1p5plunabs,-13.50750953, -13.21090697]),
}
Но я почти не знаю, как это сделать. Я ценю любую помощь в отношении любых вопросов, упомянутых выше.