我正在尝试读取.txt文件,并将浮动内容提取到列表中。由于缺少(mm),txt文件包含3列,有时还有2列
我只想提取行末的数字并将其放入列表中
SHAPE\SEC_1\WIDTH_UPR_01 (mm) 40
SHAPE\SEC_1\HIGHT_01 (mm) 35
SHAPE\SEC_1\WIDTH_LWR_01 (mm) 40
SHAPE\SEC_1\NEUTRAL_WEB_SHIFT_01 0.7
SHAPE\SEC_1\NEUTRAL_WEB_WIDTH_01 (mm) 30
我尝试了一个名为np.load的numpy函数
import numpy as np
x= np.loadtxt("CATIA_DV_File.txt", dtype='string', delimiter=' ', unpack=True)
答案 0 :(得分:1)
正常读取文件,分割每一行,然后将分割后的最后一个元素附加到列表中。
float_list = []
with open("CATIA_DV_File.txt","r") as f:
for line in f:
float_list.append(float(line.split()[-1]))
print(float_list)
答案 1 :(得分:1)
with open("CATIA_DV_File.txt") as fh:
data = [line.split()[-1] for line in fh]
data = np.array(data, dtype=np.float64)
这将逐行读取文件,抓住每行的最后一个“单词”并将其放入列表中,然后将列表转换为具有浮点类型的numpy数组
可以将其浓缩成一个衬套:
data = np.array([line.split()[-1] for line in open("CATIA_DV_File.txt")], dtype=np.float64)