最近一直在做数据的处理,其中要包括读写文件,现在总结一下用到的python读写文件的三种方式。
1.第一种是经常使用的readline和write的方法,该方法主要以字符串的形式进行读写。
读文件:
file=open(‘文件路径’,‘r’)
line = file.readline()
readline([size]):从文件读取整行,包括‘\n’字符。如果给定的是一个负数或未给定则读取整行,给定的是一个正数,则返回指定大小的字节数。返回数据类型为字符串。
写文件:
file = open(‘文件路径’,‘w’) 如果没有改文件就自动创建
file.write()
2.第二种是使用pandas来进行文件的读取,pandas是专业处理数据的,是一款数据处理的神器。
在读写文件之前要先导入pandas的库
import pandas as pd
如果没有安装pandas的库,可以使用pip install pandas来进行安装。
读文件:
pd.read_csv()
pd.read_csv(File, header=None, sep=’|’,index_col=None,dtype = str,chunksize=5000000)
写文件:
df = DataFrame(outList,dtype = str)
df.to_csv(Path ,mode = ‘a’,sep = ‘^’,index =False,header=False)
由于相应的参数比较多,这里就用几个常用的,其他自行百度。
3.第三种就是使用numpy来读写数据
读文件
numpy.loadtxt
根据前面定制的保存格式,相应的加载数据的函数也得变化.
参数介绍
numpy.loadtxt(fname, dtype=
fname:文件名/文件路径,如果文件后缀是.gz或.bz2,文件将被解压,然后再载入
dtype:要读取的数据类型
comments:文件头部或者尾部字符串的开头字符,用于识别头部,尾部字符串
delimiter:划分读取上来值的字符串
converters:数据行之间的分隔符
…后面不常用的就不写了
numpy.savetxt
保存数组到文本文件上,可以直接打开查看文件里面的内容.
参数介绍
numpy.savetxt(fname, X, fmt=’%.18e’, delimiter=’ ‘, newline=’\n’, header=’’, footer=’’, comments=’# ', encoding=None)
fname:文件名/文件路径,如果文件后缀是.gz,文件将被自动保存为.gzip格式,np.loadtxt可以识别该格式
X:要存储的1D或2D数组
fmt:控制数据存储的格式
delimiter:数据列之间的分隔符
newline:数据行之间的分隔符
header:文件头步写入的字符串
footer:文件底部写入的字符串
comments:文件头部或者尾部字符串的开头字符,默认是’#’
encoding:使用默认参数