目录
一.打开文件
r:以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
a : 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
w:只写
rb:以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
ab:以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
wb:以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
r+:打开一个文件用于读写。文件指针将会放在文件的开头。
a+:打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
w+:读写
rb+:以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
ab+:以二进制方式打开,数据写入时在原内容后追加;打开后指针在文件头部。
wb+:以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
二.打开文件操作
打开文件读写方式
r+:是以读写方式打开,但是如果文件不存在,就会报错
w+:是以读写方式打开,但是如果文件不存在,就会创建新文件;如果文件存在,则正常打开
例:从磁盘的文件中读内容
#coding=utf-8
# 打开文件
file1 = open("D:/py1/a2.txt","w+")
# 读取文件的内容
str = file1.read()
# 关闭文件
file1.close()
print(str)
read的方法
作用:是从打开的文件中读取内容原理:
read是通过移动指针来从文件中读取内容
#coding=utf-8
# 打开文件
file1 = open("D:/py1/a1.txt","r")
# 读取文件的内容
# 第一次读取文件的内容
str1 = file1.read()
# 第二次读取文件的内容
str2 = file1.read()
# 关闭文件
file1.close()
# 第一次读取文件内容,会正常输出,第二次执行read没有任何输出
# 因为第一次读取完成后,指针已经移动到了最后的位置
print(str1)
print(str2)
write
作用:是向文件中写入内容
向文件中写入内容
str1 = "hello boys\n"
str2 = "i am"
str3 = "zxhk\n"
str4 = "i come from hebei\n"
# 第一步:新建/打开文件
file = open("d:/py1/myfile.txt","a")
# 第二步:写入
file.write(str1)
file.write(str2)
file.write(str3)
file.write(str4)
# 第三步:关闭文件
file.close()
将myfile.txt 复制一个新文件afile.txt
# 打开两个
# myfile.txt 以只读打开,然后读取内容
f1 = open("d:/py1/myfile.txt","r")
# afile.txt 以写打开,
f2 = open("d:/py1/afile.txt","w")
# 然后将从myfile.txt读的内容写入到afile.txt
str = f1.read()
f2.write(str)
# 关闭文件
f1.close()
f2.close()
三.文件常用方法
read() 从文件中读取全部内容,读取后指针指向文件的末尾
write() 向文件中写入内容
readline() 执行一次readline,就会从文件中读取一行出来
readlines() 执行一次readline,就会将文件中的全部内容读取出来,并保存成一个列表,一行就是一个元素
让用户输入5个用户名,将用户名保存到文件中
f = open("d:/py1/name.txt","w")
for n in range(5):
name = input("please etner name: ")
str = name + "\n"
f.write(str)
f.close()