Python3中文件处理
1、txt,xls,doc等文件的使用
f=open(“filename”,”w”) 打开一个用于写入的文件,要写入内容时使用f.write(“内容”) f=open(“filename”,”r”) 打开一个用于读的文件,读时使用f.read(),返回读取的到的字符串; f=open(“filename”,”a”) 打开的文件既可用于读,也可用于写;
注:以上方式打开的文件读取出来的内容是字符串,写入的时候也必须全都是字符串;
2、pickle模块
pickle提供了从python程序中保存数据最简单的方法,原理是直接将数据以二进制进行保存,可以将数据原封不动的保存和读取;但如果加载不可信源有安全危险;
以gzip压缩的文件都以一个特定的魔数引导。
f=open(filename,"wb") #读取用"rb",追加用"ab",还有"rb+","wb+","ab+"表示可读可写;
pickle.dump(data,fh,pickle.HIGHEST_PROTOCOL)#pickle文件的写入方法
读取可用pickle.load(fh)
3、文件对象属性与方法
1 f.close() 关闭文件对象f,并将属性f.close设置为True; 2 f.close 文件已关闭,则返回True; 3 f.encoding byte与str之间进行转换时使用的编码; 4 f.fileno() 返回底层文件的文件描述符; 5 f.flush() 清空文件对象; 6 f.isatty() 如果文件对象与控制台关联,就返回True; 7 f.mode 文件对象打开时使用的模式; 8 f.name 文件对象f的文件名(如果有); 9 f.newlines 文本文件f中的换行字符串的类型; 10 f.__next__() 返回文件对象f的下一行; 11 f.peek(n) 返回n个字节,而不移动文件指针的位置; 12 f.readable() 如果f已经打开等待读取,则返回True; 13 f.read(count) 文件对象f中读取至多count个字节,如果没有指定count,就读取从当前文件指针直到最后的每个字节,以二进制模式时,返回bytes对象;以文件模式时,返回str对象; 14 f.readinto(ba) 将至多len(ba)个字节读入到bytearray ba中,并返回读入字节数,如果在文件结尾,就为0; 15 f.readline(count) 读取下一行,包括\n; 16 f.readlines(sizehint) 读入到文件结尾之前的所有行,并以列表形式返回; 17 f.seek(offset,whence) 如果没有给定whence,或其为os.SEEK_SET,就按给定的offset移动文件指针... 18 f.seekable() 如果f支持随机存取,就返回True; 19 f.tell() 返回当前指针位置; 20 f.truncate(size)截取文件到当前文件指针所在位置,如果给定size,就到size大小处; 21 f.writable() 如果f是为写操作而打开的,就返回True; 22 f.write(s) 将文本对象s写入到文件; 23 f.writelines(seq)将对象序列写入到文件;