什么是文件?
文件是操作系统为用户或应用程序提供的读写硬盘的虚拟单位,有了文件我们可以读取数据,没有文件的话应该去在硬盘上扣动机械手臂然后寻找数据
如何使用文件
1,打开文件
2,读写数据
3,保存
4,关闭文件
使用python控制文件
read一次性读取所有所有的数据,readline读取一行,读取完所有的数据,继续读取为空
fr = open(r'C:\Users\nickc\Desktop\test.txt',encoding='gbk')
print(fr.read())
fr.close()
- 打开文件瞬间是在操作硬盘和内存
- python3不能操作硬盘,因为是应用程序
- 看到的python3打开文件操作,都是基于操作系统
- 然后用del只是删除变量名的内存占用
- 但是我们从来没有告诉操作系统关闭文件
- 所以我们必须使用f.close()关闭文件
文件的三种打开方式
文件操作的基础模式有三种(默认r)
- r-read
- w-write
- a-append
文件读写内容的格式有两种
- t-text
- b-bytes
注意:t.b不能单独使用,与r\w\a连用,r\w\a能单独使用
fr = open('test.txt',mode='a',encoding='utf8')
data = fr.write('john')# 默认r=rt
int(b'\101000\011111')
绝对路径与相对路径
1,绝对路径: 根目录开始,一直到所需要的文件路径
2,相对路径:当前文件夹开始,打开的文件必须和运行的py文件必须在一个文件夹下
指针
with open('test.txt','rt+',encoding='utf8') as fa:
文件的写入没有插入,只有覆盖
文件的拷贝
文件不能插入,但有需求修改文件,插入
with open('test.txt', 'r', encoding='utf8') as fr:
data = fr.read()
data = data.replace('sb', '帅逼')
print(data)
with open('test_swap.txt', 'w', encoding='utf8') as fw:
fw.write(data)
import os
os.remove('test.txt')
os.rename('test_swap.txt', 'test.txt')
简便写法:
with open('test.txt,'r',encoding='utf8') as fr,\
open)('test_swap.txt','w',encoding='utf8') as fw:
data = fr.read()
data = data.replace('sb',’傻逼')
import os
os.remove('test.txt')
os.rename('test_swap.txt','test.txt')