txt里内容如下:
希望将第一个分隔符后的内容提取,如第一行提取
[32,120]
第二行提取
[153,53]
最终得到该txt的所有行的一个矩阵,即
[[32,120],[153,53]]
#附txt内容
2000/1/4 2:18|32|120
2000/1/4 2:39|153|53
2000/1/4 4:11|32|120
2000/1/4 4:54|120|165
2000/1/4 5:58|203|54
2000/1/4 7:25|187|183
2000/1/4 7:27|187|153
2000/1/4 9:07|187|153
a=[]
with open(filepath,'r') as file:
for line in file:
b=line.split('|')
a.append([b[1],b[2]])
mat = []
with open('test.txt', encoding = 'utf-8') as f:
for i in f:
l = i.strip().split("|")[1:]
mat.append(list(map(int, l)))
print(mat)
先定义一个存储最终元素的list,比如data_array
循环读取文本文件的行 提示: 可以用 with open() as f 打开,然后循环从f.readlines()取行;
去掉每行最后的换行符 提示: line.replace('\n')
将行内容按'|'分裂,只分一次 提示: line.split('|', maxsplit=1)
string.split输出是list类型数据,此时包含两个元素,取第二个元素,再按'|'分裂,就能获得你想要的行内容list
此时,根据你的需要,将提取的数字从字符串转换为int
然后就可以将这个数据存入存储list中(使用list.append())
最后print(data_array)
大概这么个思路?