文件
- 什么是文件?
文件是操作系统提供给用户/应用程序操作硬盘的一种虚拟的概念/接口 用户/应用程序:(f=open(),获取文件对象、文件句柄) 操作系统:文件 计算机硬件:硬盘
- 文件的作用?
用于应用程序操作硬盘进行数据的永久存储,或从硬盘中读取数据
应用程序操作文件的行为,都是文件在调用操作系统,操作系统将其转为具体的硬盘操作
- 使用文件
# 打开文件,
f = open(r'文件路径',mode="rt",encoding="utf-8") # r兼容平台路径的转义
# 文件读写
f.read()
# 关闭文件
f.close()
文件模式
文件内容模式
t
模式:文本模式,读写都是以字符串(unicode)为单位的,只能针对文本文件,必须指定字符编码encoding="utf-8"
b
模式:binary
模式# 1. 读写都是以bytes为单位 # 2. 可以针对所有文件类型 # 3. 一定不能指定字符编码 # 4. 如何是纯英文字符,可以使用b'111aasdf'得到bytes类型 # 5. "上".encode('utf-8') == bytes('上',encoding="utf-8") with open(r"xx.mp3",mode="rb") as f: ...
文件操作模式
r
模式:只读模式w
模式:只写模式,清空写a
模式:只写模式,追加写+
模式(了解):可读可写,不能单独使用,必须与r/w/a
配合使用x
模式(了解):只写模式,不存在则创建,存在时报错
文件操作方法
# 读操作
f.read() # 读取所有内容,执行完读操作光标移动到最后
f.read(1024) # 读取内容大小,
f.readline() #一次读一行,光标移动到下一行首位
f.readlines() # 读取每一行,返回一个列表移动到最后
# 写操作
f.writelines(list) # list列表写入文件
# flush
f.flush() # 刷新
# readable/wirtable/closed : 判断是否可以读、写、是否关闭
f.readable()
f.writable()
f.closed
f.name
f.encoding
文件的指针操作
指针的移动单位都是以bytes为单位的,只有一种情况特殊,t模式下的read(n),n代表的是字符个数
模式:
- 模式0:参照物是文件开头位置
- 模式1:参照物是指针当前位置
- 模式2:参照物是文件开头结尾
只有0模式可以在t下使用,1、2必须在b模式下用
f.seek(2,0)
f.seek(2,1)
f.seel(-2,2) # 倒序查找
f.tell() # 获取文件指针位置
标签:文件,encoding,python,bytes,模式,操作,硬盘
From: https://www.cnblogs.com/hyf120/p/16842871.html