1。1打开文件 python文件通过open()函数打开,返回一个文件对象。1。1。1open() 用法open(file,moder) 描述 python的内置函数ope(),打开文件,返回一个文件对象。 参数 file:包括文件名的文件路径字符串。 mode:文件打开方式,默认为r,只读。 序号 模式 操作 文件不存在 处理文件内容 1hrr 只读,用于读文件 报错 从头开始读 2hrw 只写,用于写文件 创建 覆盖原文件内容,从头开始写 3hra 只写,用于写文件 创建 文件末尾追加内容 4hrr 读写,用于读写文件 报错 从头读,写时覆盖原文件内容 5hrw 读写,用于读写文件 创建 从头读,写时覆盖原文件内容 6hra 读写,用于读写文件 创建 从头读,写时文件末尾追加内容 出参 返回文件对象 示例filepathrE:documentsF盘file。txtr,不存在报错fopen(filepath,r)Traceback(mostrecentcalllast):Filepyshell1,line1,inmodulefopen(filepath,r)FileNotFoundError:〔Errno2〕Nosuchfileordirectory:E:documentsF盘file。txtw,不存在创建fopen(filepath,w)filepath1rE:documentsF盘file1。txtr,不存在报错f1open(filepath1,r)Traceback(mostrecentcalllast):Filepyshell14,line1,inmodulef1open(filepath1,r)FileNotFoundError:〔Errno2〕Nosuchfileordirectory:E:documentsF盘file1。txta,不存在创建f1open(filepath1,a)1。2文件操作1。2。1close() 描述 python文件的close()方法,用于关闭文件对象,关闭后不可调用file对象方法。 示例filepathrE:documentsF盘file。txtfopen(filepath,r)f。readline()name:梯阅线条,f。close()close()后,不可调用file方法f。readline()Traceback(mostrecentcalllast):Filepyshell26,line1,inmodulef。readline()ValueError:IOoperationonclosedfile。1。2。2write() 用法write(text) 描述 python文件的write()方法,将字符串写入到文件,返回字符串长度。 参数 text:字符串 出参 返回字符串长度 示例filepathrE:documentsF盘file。txtsname:梯阅线条,des:软件测试开发fopen(filepath,w)f。write(s)21f。close()len(s)211。2。3read() 用法read(size1) 描述 python文件的read()方法,一次读取全部文件内容或指定个数的字符的文件内容。 参数 size:字符数,默认1,或负数,表示读取整个文件,即一直读到EOF。 否则,读到size个字符为止。 出参 返回字符串 示例fopen(filepath,r)txtf。read()print(txt)name:梯阅线条,des:软件测试开发f。close()fopen(filepath,r)txtf。read(5)print(txt)name:f。close()1。2。4readline() 用法readline(size1) 描述 python文件的readline()方法,一次读取一行或者一行指定字符数的文件内容。 参数 size:字符数,默认为1,表示读取一行,未送则读取一行。 大于0整数,则读取一行中的指定个数size字符。 出参 返回一行内容,遇到结束符EOF,返回空字符。 示例fopen(filepath,r)txtf。readline()txtname:梯阅线条,f。readline()des:软件测试开发f。readline()f。close()fopen(filepath,r)f。readline(5)name:f。close()fopen(filepath,r)f。readline(100)name:梯阅线条,f。close()1。2。5readlines() 用法readlines() 描述 python文件的readlines()方法,一次读取全部行。 参数 略 出参 返回行列表。 示例fopen(filepath,r)txtlistf。readlines()txtlist〔name:梯阅线条,,des:软件测试开发,,url:tyxt。work〕f。close()1。2。6read()、readline()、readlines()比较 序号 方法 描述 使用情况 1hrread() 一次读取全部文件内容,返回字符串 大数据,占内存,速度最快 2hrreadline() 一次读取一行,返回字符串 大数据,小内存,速度慢 3hrreadlines() 一次读取全部文件内容,返回行列表 大数据,占内存,速度居中1。2。7for 描述 python文件通过for循环遍历文件行。 示例f。close()fopen(filepath,r)forlineinf:print(line,end)name:梯阅线条,des:软件测试开发,url:tyxt。workf。close()1。3文件存储并解析python对象1。3。1手动存储和解析 描述 python文件以字符串方式存储python对象,再读取文件内容解析为python对象。 示例s梯阅线条L〔91,92,93〕D{a:1,b:2,c:3}write前转为strf。write(s)5f。write(str(L))13f。write(str(D))25f。close()fopen(filepath,r)txtf。read()print(txt)梯阅线条〔91,92,93〕{a:1,b:2,c:3}f。close()fopen(filepath,r)line1sf。readline()。rstrip()line1s梯阅线条line2Lf。readline()line2L〔91,92,93〕eval执行python表达式或语句,生成对象line2Leval(line2L)line2L〔91,92,93〕line3Df。readline()line3D{a:1,b:2,c:3}line3Deval(line3D)line3D{a:1,b:2,c:3}type(line1s),type(line2L),type(line3D)(classstr,classlist,classdict)1。3。2pickle模块1。3。2。1dump() 用法dump(obj,file,protocolNone) 描述 python的pickle。dump()方法,可以将python的任何对象存储到文件中,dump()后的文件内容可读性差,一般无法识别,也叫序列化对象。 多个对象,就多次调用dump()。 参数 obj:任何python对象; file:文件对象,需以二进制模式(b)打开; protocol:0ASCII协议,1老式二进制,2新二进制协议 示例filepathrE:documentsF盘file。pkld{a:1,b:2}fopen(filepath,wb)importpicklepickle。dump(d,f)f。close()1。3。2。2load() 用法load(file) 描述 python的pickle。load()方法,从file文件对象读取内容,并生成与存储时相同的对象。 参数 file:文件对象,需以二进制模式(b)打开; 示例importpicklefilepathrE:documentsF盘file。pkld{a:1,b:2}l〔91,92〕fopen(filepath,wb)pickle。dump(d,f)pickle。dump(l,f)f。close()fopen(filepath,rb)datapickle。load(f)type(data)classdictprint(data){a:1,b:2}d1pickle。load(f)type(d1)classlistprint(d1)〔91,92〕d2pickle。load(f)Traceback(mostrecentcalllast):Filepyshell41,line1,inmoduled2pickle。load(f)EOFError:Ranoutofinput 版权声明: 本文首发微信公众号:梯阅线条, 原创不易,转载请注明出处。 更多内容参考python学习笔记或软件测试开发目录。