Python的文件操作
Python的文件操作
文件打开
使用open函数打开
<变量名> = open("文件名", "打开模式")
注意:
- 文件名要是正斜杠才行“
/
”, 因为反斜杠"\
"在python中解析为转义符- 如果是打开中文文档要在后面加上
encoding = "utf-8"
,即<变量名> = open("文件名", "打开模式", encoding = "utf-8")
文件的打开模式 | 说明 |
---|---|
'r' | 只读模式,默认值,如果文件不存在,返回FileNotFoundError |
'w' | 覆盖写模式,文件不存在则创建,存在则完全覆盖 |
'x' | 创建写模式,文件不存在则创建,存在则返回FileExistsError |
'a' | 追加写模式,文件不存在则创建,存在则在文件最后追加内容 |
'b' | 二进制文件模式。 PS: rb 表示以二进制形式打开文件,只读模式 |
't' | 文本文件模式,默认值。PS: rt 表示以文本形式打开文件,只读模式 |
'+' | 与r/w/x/a 一同使用,在原功能基础上增加同时读写功能 |
文件关闭
比较简单,只需使用一个方法即可,无参数
<变量名>.close()
PS: 如果一个程序打开了文件,而没有关闭文件,那么这个文件在程序运行过程中始终都是打开状态,但是当程序退出,Python的解释器会自动的把文件关闭。所以如果你搞忘关闭文件了,也不用担心,只要这个程序正常退出,文件也是会被关闭的。
文件内容的读取
操作方法 | 说明 |
---|---|
<f>.read(size=-1) | 读入全部内容,如果给出参数,读入前size 长度的字节>>> s = f.read(2) 文件 |
<f>.readline(size=-1) | 读入一行内容,如果给出参数,读入该行前size 长度的字节>>> s = f.readline() 文件内容的读取。 |
<f>.readlines(hint=-1) | 读入文件所有行,以每行为元素形成列表;如果给出参数,读入前hint 行>>> s = f.readlines() ['文件内容的读取。'] |
数据文件的写入
操作方法 | 说明 |
---|---|
<f>.write(s) | 向文件写入一个字符串或字节流>>> f.write("数据文件的写入") |
<f>.writelines(lines) | 将一个元素全为字符串列表写入文件>>> ls = ["文件读取", "文件写入", "文件操作"] >>> f.writelines(ls) 文件读取文件写入文件操作 PS: 这种文件写入方式是把列表中的数据直接拼接写入文件,不会添加空格、换行等其他符号 |
<f>.seek(offset) | 改变当前文件操作指针的位置(相当于确定写入的数据在文件的什么位置),offset含义: 0— 文件开头;1—当前位置;2—文件结尾 >>> f.seek(0) #回到文件开头 |