标签:字符 打开 type lin 报错 txt 上下文 文件 应用程序
1.什么是文件
文件是操作系统提供给用户/应用程序的一种虚拟单位,该虚拟单位直接映射的是硬盘空间
2.为何要处理文件
用户/应用程序直接操作文件(读/写)就被操作系统转换成具体的硬盘操作,从而实现用户/应用程序将内存中的数据永久保存到硬盘中
3.如何用文件处理
文件处理的三个步骤
f =open(r"c.txt",mode="r",encoding="utf-8") #文件对象(应用程序的内存资源)----->操作系统打开的文件(操作系统的资源)
print(f)
data=f.read()
f.close() #向操作系统发送信号,让操作系统关闭打开的文件,从而回收操作系统的资源
#上下文管理
with open(r"c.txt",mode="r",encoding="utf-8")as f:
open(r"r.txt",mode="r",encoding="utf-8")as f1:
读写文件的操作
操作系统可自动关闭文件,从而回收系统的资源
#文件的打开模式:r(默认模式) w a
#操作文件的内容的模式
t(默认的):操作文件内容都是以字符串为 单位,会自动帮我们解码必须指定encoding参数
b:操作文件内容都是Bytes(二进制)为单位,硬盘中存的是什么就取出什么,一定不能指定encoding参数
总结:t模式只能用于文本文件,而b模式可以用于任意文件
r模式:只读模式,在文件不存在时则报错,如果文件存在文件指针跳到文件的开头
with open(r"c.txt‘‘,mode="rt",encoding="utf-8")as f:
print(f.read())
print(f.readable())
print(f.writable())
f.write("hello")#只能读
# data=f.read()
# print(data,type(data))
# with open(r‘c.txt‘,mode=‘rb‘) as f:
# data=f.read()
# # print(data,type(data))
# res=data.decode(‘utf-8‘)
# print(res)
# with open(r‘c.txt‘,mode=‘rt‘,encoding=‘utf-8‘) as f:
# # line=f.readline()
# # print(line,end=‘‘)
# # line1=f.readline()
# # print(line1,end=‘‘)
# # line2 = f.readline()
# # print(line2,end=‘‘)
#
# lines=f.readlines()
# print(lines)
# with open(r‘c.txt‘,mode=‘rt‘,encoding=‘utf-8‘) as f:
# line=f.readline()
# print(line,end=‘‘)
# 循环读文件内容的方法:
# with open(r‘c.txt‘,mode=‘rt‘,encoding=‘utf-8‘) as f:
# for line in f:
# print(line,end=‘‘)
标签:字符 打开 type lin 报错 txt 上下文 文件 应用程序
原文地址:https://www.cnblogs.com/lujiachengdelu/p/9960349.html