1、文件的读和写
open() 将会返回一个 file 对象,基本语法格式如下:
open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True):
不同模式打开文件的完全列表:
模式 | 描述 |
---|---|
r | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
rb | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。 |
a | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
w | 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
#1.将程序中的数据,写入到文件中
file=open('./data.1.1.text','w',encoding="utf-8")
#程序中含有一个字符串
message="hello world"
#将数据写入到文件中
file.write(message)
#关闭文件
file.close()
#2.将文件中的数据,读取到程序中
#按照只读的方式打开文件
file=open('./data.1.1.text','r',encoding="utf-8")
#从文件中读取数据,展示到控制台中
info=file.read()
print(info)
#关闭文件
file.close()
#3.文本文件的追加
file=open(file="./data.1.2.text",mode="a",encoding="utf-8")
#要操作的文本数据
message="hello"
file.write(message)
message2="\nworld\n"
file.write(message2)
#关闭文件
file.close()
#4.二进制文件的操作
#二进制的文件 C:/Users/Administrator/Desktop/壁纸/timg2.jpg
#读取计算机中的二进制文件数据
file=open(file="C:/Users/Administrator/Desktop/timg2.jpg",mode="rb")
#读取数据到程序中
print(file.read())
#将数据重新储存到我们指定的位置
file2=open(file="./data.jpg",mode="wb")
file2.write(file.read())
#关闭文件2
file2.close()
file.close()
#5.文件的快捷操作,with 语法
with open(file="C:/Users/Administrator/Desktop/time2.jpg",mode="rb") as file1:
#打开文件,将文件对象赋值给变量file1,with中的代码执行完成,文件file1 自动关闭
with open("./data/"+file1.name[file1.name.rfind("/"):],"wb")as file2:
#将读取的文件储存到指定的文件夹中
file2.write(file1.read())