r :文件以读方式打开(智能读步能写)
r+:文件以读、写方式打开,可读、可写(如果文件不存在保存)
w:文件以写方式打开,文件不存在自动创建,文件存在将会清空文件
w+:文件以读写方式打开,
a:追加
a+:文件以读写方式打开,文件不存在自动创建(读取文件由于是从左到右读取,请先将指针放到内容最前端 f.seek(0)
1.文件打开后一定要记得关闭
2.使用with as 操作文件可以自动将文件关闭
文件读取的方法
f.read()
f.readlines() #读取出的文件以列表方式展示
f.readline() #每次只读取文件中的一行
文件写入的方法
f.write() #往文件内写入字符串
f.writelines() #可以将整个list中的元素转变为一个字符串写入文件中
清空文件内容方法
f.truncate() #写这个语句前需现将指针放到最前面
修改文件
#第一种方法
with open('test.txt','r+',encoding = 'utf-8') as f:
f_read = f.read()
f.seek(0)
f.truncate() #清空文件内容
f_write = f_read.replace('呵呵','嘻嘻')
f.write(f_write)
#第二种方法
import os
with open('test.txt','r+',encoding = 'utf-8') as f,open(文件写入的方法'r+',encoding = 'utf-8') as f2:
for k in f: #循环f中的每一行
f2.write(k) #把f文件中的每一行都写入f2中
os.remove('test.txt')
os.rename('test2.txt','test.txt')
例子1
f = open('test.txt','a+',encoding = 'utf-8')
f.read()
for k in f: #在文件中使用for循环的是文件的每一行
print(k)
f.write('这是一个字符串')
f.close()
例子2
with open('test.txt','a+',encoding = 'utf-8') as f,open('test.txt','a+',encoding = 'utf-8') as f2: #此方法可以同时打开两个文件
f.read()
f.write('这是一个字符串')