gpt4 book ai didi

python - 使用 Python 正则表达式从文件中读取数据

转载 作者:太空狗 更新时间:2023-10-30 03:07:58 25 4
gpt4 key购买 nike

我在使用 python reg exp 从文件中读取数据时遇到问题。

该文件包含我想要的数据和一些我不感兴趣的信息。下面是我感兴趣的信息示例。行数会有所不同

FREQ VM(VOUT)        

1.000E+00 4.760E+01

1.002E+00 4.749E+01
Y

我想创建一个元组列表,例如:

[(1.000, 47.6),(1.002, 47.49)]

我尝试读取文件直到找到“FREQ VM(VOUT)”行并读取数据点直到我点击“Y”。

我有两个问题:

  1. 是否可以用一个表达式得到所有的点,还是我需要遍历每一行并寻找起点和终点?当我尝试查找该部分并阅读单个表达式中的点时,我似乎无法让 reg exp 工作。
  2. 如何解析采用工程符号的数字?

我找不到与我正在做的事情非常接近的例子。如果它在那里,请指出它。

最佳答案

我想这会让你得到你想要的。只要文件一致即可。

from csv import reader
with open('file') as f:
listoftuples = [(float(row[0]), float(row[1]))
for row in reader(f, delimiter=' ')
if row and row[0] != 'FREQ']

如果你想让它在'Y'处中断,那么做这个不太优雅的事情:

from csv import reader
l = []
with open('file') as f:
for row in reader(f, delimiter=' '):
if row[0] == 'Y':
break
if row and row[0] != 'FREQ':
l.append((floar(row[0]), float(row[1])))

关于python - 使用 Python 正则表达式从文件中读取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2170461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com