一、文件类型
按照文件中数据的组织形式可以把文件分为文本文件和二进制文件两大类。
1.文本文件
文本文件存储的是常规字符串,由若干文本行组成,通常每行以换行符‘\n’结尾。常规字符串是指记事本或其他文本编辑器能正常显示、编辑并且人类能够直接阅读和理解的字符串,如英文字母、汉字、数字字符串。文本文件可以使用字处理软件,如gedit、记事本进行编辑。
2.二进制文件
二进制文件把对象内容以字节串进行存储,无法使用记事本或其他普通文本处理软件直接进行编辑,通常也无法被人类直接阅读和理解,需要使用专门的软件进行解码后读取、显示、修改或执行。常见的如图形图像文件、音视频文件、可执行文件、资源文件、各种数据库文件、各类office文档都属于二进制文件。
二、文件操作
1.文件对象
无论是文本文件还是二进制文件,其操作流程基本都是一致的。
首先先打开文件并创建文件对象,然后通过该文件对象对文件内容进行读取、写入、删除、修改等操作,最后关闭并保存文件内容。
Python内置了文件对象,通过open()函数即可以指定模式打开指定文件并创建文件对象,语法为
open(file,mode='r',buffering=-1,encoding=None,errors=None,newline=None,closefd=True,opener=None)
其中,file 指定了被打开的文件名称,如果要打开的文件不在当前目录中,还需要指定完整路径,为减少完成路径中“\”符号的输入,可以使用原始字符串;模式制定了打开文件后的处理方式,件下图;缓冲区指定了读写文件的缓存模式,数值0表示不缓存,数值1表示缓存,如大于1则表示缓冲区的大小,默认值-1表示系统管理缓存。如果执行正常,open()函数返回一个文件对象,通过该文件对象可ui对文件进行各种操作,如果指定文件不存在、访问权限不够、磁盘空间不够或者其他原因导致创建文件对象失败则抛出异常。
例如,下面的代码分别以读、写两种方式打开了两个文件并创建了与之对应的文件对象。
f1 = ope