--打开文件
--操作文件:读/写内容
--关闭文件(读写完成,要及时的关闭)
- # 文件处理
- # 第一步:(以只读模式)打开文件
- f = open("data.txt", mode="r", encoding="utf-8")
- # 第二步: 读取文件内容
- # print(f.read())
- # 第三步:关闭文件
- f.close()
| 文件打开模式 | 描述 |
| r | 以只读模式打开文件,并将文件指针指向文件头;如果文件不存在则会报错 |
| w | 以只写模式打开文件,并将文件指针指向文件头;如果文件存在则将其内容清空,如果文件不存在则创建 |
| a | 以只追加可写模式打开文件,并将文件指针指向文件尾部;如果文件不存在则创建 |
| w+ | 读写权限,会新建文件,清空内容再写入 |
| r+ | 读写权限,替换原来的内容 |
| a+ | 读写权限,追加内容 |
| b | 读写二进制文件(默认是t,表示文本),需要与上面集中模式搭配使用, |
| 方法 | 描述 |
| read() | 一次读取文件所有内容,返回一个str |
| read(size) | 每次最多读取指定长度的内容,返回一个str,在python2中size指定的是字节长度,在python3中size指定的是字符长度 |
| 一次读取文件所有内容,按行返回一个list | |
| readline() | 每次只读取一行内容 |

- # 文件处理
- # 第一步:(以只读模式)打开文件
- f = open("data.txt", mode="r", encoding="utf-8")
- # 第二步: 读取文件内容
- # print(f.read())
- # print(f.readline())
- # print(f.readlines())
- # print(f.read(3))




- # 把游标位置设置成最开始
- f.seek(0)

--打开文件达到一定数量,将会导致打开失败
--占用内存空间,非常浪费资源
--会导致系统自动回收资源,而丢失数据
- with open("data.txt", mode="r", encoding="utf-8") as f:
- print(f.read())
- print(f.closed)

| 方法 | 描述 |
| w+ | 读写权限,会新建文件,清空内容再写入 |
| r+ | 读写权限,替换原来的内容 |
| a+ | 读写权限,追加内容 |
- with open("data.txt", mode="r+", encoding="utf-8") as f:
- print(f.read())
- f.seek(0)
- f.write("哈哈哈")
- f.seek(0)
- print(f.read())
- print(f.closed)


