python : 将txt文件中的数据读为numpy数组或列表
2015-01-08 11:11
2671 查看
很多时候,我们将数据存在txt或者csv格式的文件里,最后再用python读取出来,存到数组或者列表里,再做相应计算。本文首先介绍写入txt的方法,再根据不同的需求(存为数组还是list),介绍从txt读取浮点数的方法。
一、写入浮点数到txt文件:
假设每次有两个浮点数需要写入txt文件,这里提供用with关键字打开文件的方法,使用with打开文件是一个很好的习惯,因为with结束,它就会自动close file,不用手动再去flie.close()。
二、从txt文件提取浮点数到numpy数组或list列表
首先假设你有一个odom.txt 的文件,里面每一行的数据个数都相同,如截图所示:
1.如果你是想把这些数据读取出来,存为numpy数组,那么一句代码可以搞定:
存为numpy数组以后,a的尺寸可以用a.shape进行查看,这里应为:(14,2)也就是14行2列。如果你觉得这个形状不是你期待的,你可以用:
2.如果只是想读出来,存到一个list里,那就用下面的常用python格式了:
参考:
1.txt读取文件beginner tutorial
2.stackoverflow answer
一、写入浮点数到txt文件:
假设每次有两个浮点数需要写入txt文件,这里提供用with关键字打开文件的方法,使用with打开文件是一个很好的习惯,因为with结束,它就会自动close file,不用手动再去flie.close()。
with open('file_path/filename.txt','a') as file: write_str = '%f %f\n'%(float_data1,float_data2) file.write(write_str)
二、从txt文件提取浮点数到numpy数组或list列表
首先假设你有一个odom.txt 的文件,里面每一行的数据个数都相同,如截图所示:
1.如果你是想把这些数据读取出来,存为numpy数组,那么一句代码可以搞定:
a = numpy.loadtxt('odom.txt')
存为numpy数组以后,a的尺寸可以用a.shape进行查看,这里应为:(14,2)也就是14行2列。如果你觉得这个形状不是你期待的,你可以用:
b = numpy.reshape(a,(你想要的形状)) 如 b = numpy.reshape(a,(-1,1,2))那么b就是一个三维数组了(14,1,2)
2.如果只是想读出来,存到一个list里,那就用下面的常用python格式了:
with open('odom.txt', 'r') as f: data = f.readlines() #txt中所有字符串读入data for line in data: odom = line.split() #将单个数据分隔开存好 numbers_float = map(float, odom) #转化为浮点数 print numbers_float
参考:
1.txt读取文件beginner tutorial
2.stackoverflow answer
相关文章推荐
- Python--使用xlwt将列表类型的数据写到Excel xls文件中--TxtToExcel
- python pandas 读取.txt .dat 文件时,跳读头文件,并把数据读成数组
- Python打开文件,将list、numpy数组内容写入txt文件中的方法
- Python打开文件,将list、numpy数组内容写入txt文件中
- Python打开文件,将list、numpy数组内容写入txt文件中
- python读取TXT到数组及列表去重后按原来顺序排序的方法
- python :用numpy把数据写进文件
- Python读excel生成数据存入txt文件
- 从txt文件中读取数据存入数组
- 使用java语言将数组中的数据写入txt文件,然后读取
- 用python和numpy读写将字符串或文件中的数据
- python读取.txt文件数据和将数据写入文件.txt
- Python 2.7.3 将列表中文数据写入文件
- Python中对文件夹下的特定格式图像全部读取并转化为数组保存(也可转化为txt文件)
- C语言从txt文件中逐行读入数据存到数组中的实现方法
- QT和VS读取.txt文件中的数据并保存为数组
- Python--将 txt文件里的-字典类型-的数据写到Excel中--xlwt--TxtToExcel
- numpy数组与python的list互转,然后用json写入文件与c交互
- [Head First Python]4.读取文件datafile.txt, 去除两边空格, 存储到列表,从列表格式化(nester.py)后输出到文件man.out,other.out
- Python:将文件中的数据读入到数组中