有没有办法读取文本文件中的特定值并将其存储在变量中? 例如,我的文件中有以下丢失值:
Loss per inch @ 2.500000e+00 GHz = -0.578 dB
有没有办法可以只检索频率点和等号后面的值,并将该值存储在一个变量中,该变量可以由python中的函数返回?
答案 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 ')