文件操作(IO技术):
文本文件:用来存储字符的文件,像word不属于文本,存储二进制文件,如用记事本打开会出现乱码,文本文件可用记事本打开,python默认用unicode。
二进制文件:用来存储字节,用记事本打不开,如图片,word。
文件操作相关模块:
io:输入与输出模块
os:基本操作系统功能,包括文件操作。
创建文件对象open():
语法:open(文件名[打开方式]),文件名可以录入全路径,比如:D:\a\b.txt.
常见编码:ASCII(0-127),ISO8859-1(0-256),GB2312,GBK(一个字节表示英文,两个字节表示汉字),Unicode(两个字节表示一个字符)
编码与解码要保持一致,否则会出现乱码,windows系统默认为GBK编码。
writelines()将列表写入文件里去,但不会换行。如果文件出现异常用:eccept BaseException as e:print(e)
close()关闭文件流,结合finally:来确保程序关闭。
with语句(上下文管理器):可以自动将文件关闭,with open(r"d:\bb.txt","a") as f: f.write("dnfheb").
文本文件的读取:read([size]),从文件中读取size个字符,并作为结果返回
readline():读取一行
readlines():每一行作为一个字符串存入列表,并返回。
enumerate()函数:可以将传进来的序列中元素的索引体现出来且用元组包含起来。可利用其进行对字符串的操作,例:c = (temp.rstrip()+" #"+str(index) for index,temp in enumerate(a))
rstrip():去空白符
二进制文件的读取与写入:
二进制文件处理和文本文件流程一致,但是需要指定二进制模式,f = open(r"d:\a.txt",'wb')其中wb 中的b是特指二进制。例如: