作为高级语言,对文件进行操作时必不可少的功能。那么,Python是怎么对文件进行操作的呢?
1.什么是文件?
文件是一个存储在辅助存储器上的数据序列,可以包含任何数据内容。
文件包括两种类型:文本文件和二进制文件:
文本文件一般由单一特定编码的字符组成,如utf-8编码,内容容易统一展示和阅读。
二进制文件直接由比特0和比特1组成,没有同意字符编码,文件内部数据的组织格式与文件用途有关。
2.怎么打开打开关闭文件?
Python对文本文件和二进制文件进行操作时,采用“打开-操作-关闭”的步骤
Python通过解释器内置的open()函数打开一个文件,并实现该文件与一个程序变量的关联,open()函数格式如下:
<变量名>=open(<文件名>,<打开模式>)
其中,文件名可以是文件的实际名字,也可以是包含完整路径的名字。打开模式用于控制使用何种方式打开文件。下面是7种基本的打开模式:
文件的打开模式(共7个)
文件的打开模式 | 含 义 |
'r' | 只读模式,如果文件不存在,返回异常FileNotFoundError,默认值 |
'w' | 覆盖写模式,文件不存在则创建,存在则完全覆盖 |
'x' | 创建写模式,文件不存在则创建,存在则返回异常FileExisistsError |
'a' | 创建写模式,文件不存在则创建,存在则在文件最后追加内容 |
'b' | 二进制文件 |
't' | 文本文件模式,默认值 |
'+' | 与r/w/x/a一同使用,在原功能基础上增加同时读写功能 |
3.如何读取文件?
文件被打开后,根据打开方式的不同可以对文件进行相应的读写操作。
Python提供了4个常用的文件内容读取方法:
操作方法 | 含 义 |
<file>.read(size=-1) | 从文件种读入整个文件内容,如果给出参数,读入前size长度的字符串或字节流 |
<file>.readline(size=-1) | 从文件读入一行文件内容,如果给出参数,读入该行前size长度的字符串或字节流 |
<file>.readlines(hint=-1) | 从文件中读入所有行,以每行为元素形成一个列表,如果给出参数,读入hint行 |
文件内容的写入:
方法 | 含义 |
<file>.write(s) | 向文件写入一个字符串或字节流 |
<file>.writelines(lines) | 将一个元素全为字符串的列表写入文件 |
<file>.seek(offset) | 改变当前文件操作指针的位置,offset的值: 0--文件开头;1--当前位置;2--文件结尾 |