write方法,基本的写入操作
f = open("D:\\导入文件\\aa.txt", "w", encoding="UTF-8")
# write方法,内容并没有写入文件,而是写入缓冲区
f.write("hello python")
# 内容从缓冲区刷新到磁盘文件
f.flush()
缓冲区的作用,就是避免频繁的操作磁盘,影响性能。
w是写模式
open方法,在给文件写入内容的时候,发现文件不存在,会先创建文件。
write方法,如果文件存在且有内容,调用write方法后会清空原文件中的内容,再写入新的内容。
close方法,内置了flush方法
f = open("D:\\导入文件\\aa.txt", "w", encoding="UTF-8")
# write方法,内容并没有写入文件,而是写入缓冲区
f.write("hello python")
# 内容从缓冲区刷新到磁盘文件
# f.flush()
f.close()
追加模式a,还是调用write方法
f = open("D:\\导入文件\\aa.txt", "a", encoding="UTF-8")
# write方法,内容并没有写入文件,而是写入缓冲区
f.write("haha")
# 内容从缓冲区刷新到磁盘文件
# f.flush()
f.close()
a追加模式,不会清空原文件以前的内容,直接追加新的内容。
f = open("D:\\导入文件\\aa.txt", "a", encoding="UTF-8")
# write方法,内容并没有写入文件,而是写入缓冲区
f.write("haha")
f.write("\n你好")
# 内容从缓冲区刷新到磁盘文件
# f.flush()
f.close()
写入的内容换行\n
a追加模式下,如果文件不存在,也会创建文件。
综合案例
将bill.txt的内容备份到bill.txt.bak文件中,只保留正式的数据。
with open("D:\\导入文件\\bill.txt.bak", "w", encoding="UTF-8") as t:with open("D:\\导入文件\\bill.txt", "r", encoding="UTF-8") as f:for line in f:eles = line.strip().split(",")if eles[-1] == "测试":continuet.write(line)t.write("\n")
注意处理每一行数据后的换行符。