一、
二、打开模式和关闭
(1)打开模式
文件的打开模式 | 描述 |
‘r’ | 只读模式,默认值,如果文件不存在,返回FileNotFoundError |
‘w’ | 覆盖写模式,文件不存在则创建,存在则覆盖 |
‘x’ | 创建写模式,文件不存在则创建,存在则返回FileExistsError |
‘a’ | 追加写模式,文件不存在则创建,存在则在文件最后追加内容 |
‘b’ | 二进制文件模式 |
‘t’ | 文本文件模式,默认值 |
‘+’ | 与r/w/x/a一同使用,在原功能基础上增加同时读写功能 |
(2)关闭模式
<变量名>.close()
三、文件内容的读取
(1)操作函数
操作方法 | 描述 |
<f>.read(dize=-1) | 读入全部内容,如果给出参数,读入前size长度 |
<f>.readline(size=-1) | 读入一行内容,如果给出参数,读入该行前size长度 |
<f>.readlines(hint=-1) | 读入文件所有行,以每行为元素形成列表 如果给出参数,读入前hint行 |
(2)文件的全文本操作
遍历全文本:方法一
fo=open(“zyk.txt”,“r”)
txt=fo.read()
特点:一次读入,统一处理(不适合大文件,因为会浪费很多时间和资源)
方法二:按数量读入,逐步处理
fo=open(“zyk.txt”,“r”)
txt=fo.read(2)
while txt!="":
txt=fo.read(2)
(3)文件的逐行操作
逐行遍历文件:
方法一:一次读入,分行处理(不适合大文件)
fo=open(“zyk.txt”,“r”)
for line in fo.readlines():
print(line)
方法二:分行读入,逐行处理
fo=open(“zyk.txt”,“r”)
for line in fo:
print(line)
四、数据的文件写入
操作方法 | 描述 |
<f>.write(s) | 向文件写入一个字符串或字符流 |
<f>.writelines(lines) | 将一个元素全为字符串的列表写入文件 |
<f>.seek(offset) | 改变当前文件操作指针的位置,offset含义如下: 0 - 文件开头;1 - 当前位置;2 - 文件结尾 |
五、一维数据处理
1、一维数据的格式化和处理
(1)一维数据的表示:列表类型(有序)和集合类型(无序)
(2)一维数据的存储:空格分隔、逗号分隔、特殊符号分隔
(3)一维数据的处理:通过字符串方法split()方法读入,通过str.join()方法写入
2、二维数据的格式化和处理
(1)二维数据的表示:使用二维列表
(2)二维数据的存储:CSV格式:逗号分隔表示一维,按行分隔表示二维。