将文本文件中的值存储到变量并返回它

时间:2018-05-09 04:28:53

标签: python text

有没有办法读取文本文件中的特定值并将其存储在变量中? 例如,我的文件中有以下丢失值:

Loss per inch @ 2.500000e+00 GHz = -0.578 dB

有没有办法可以只检索频率点和等号后面的值,并将该值存储在一个变量中,该变量可以由python中的函数返回?

2 个答案:

答案 0 :(得分:1)

试试这个:

with open('file.txt') as file:
    l=[]
    for line in file.readlines():
        line_array = line.split(' ')
        l.append=(line_array[0], line_array[4], line_array[7])

之后,l将是:

[
  ('Loss', '2.500000e+00', '-0.578')
]

告诉我你是否需要不同结构中的那些值而不是元组列表。

答案 1 :(得分:1)

使用正则表达式:

import re
s = """Loss per inch @ 2.500000e+00 GHz = -0.578 dB
Loss per inch @ 5 GHz = -1.011 dB"""
freq = re.findall("\@\s+(.*)GHz", s)
val = re.findall("GHz\s+\=(.*)dB", s)
for i in zip(freq, val):
    print(i)

<强>输出:

('2.500000e+00 ', ' -0.578 ')
('5 ', ' -1.011 ')
相关问题