目录
一.文本文件的写入
1.创建文件对象open()
open()函数用于创建文件对象,基本语法格式如下:
open(文件名[,打开方式])
如果只是文件名,代表在当前目录下的文件。文件名可以录入全路径,比如:D:\a\b.txt。为了减少“\”的输入,可以使用原始字符串:r“d:\b.txt”。示例如下:
f = open(r"d:\b.txt","w")
文本文件对象和二进制文件对象的创建:
如果我们没有增加模式“b”,则默认创建的是文本文件对象,处理的基本单元是“字 符”。如果是二进制模式“b”,则创建的是二进制文件对象,处理的基本单元是“字节”。
f = open(r"d:\b.txt","w")
f=open(r"d:\Python\PythonClass\file\b.txt","w") #此处要注意加引号,否则会报错!
2.文本文件的写入
文本文件的写入一般就是三个步骤:
1. 创建文件对象
2. 写入数据
3. 关闭文件对象
f=open(r"a.txt","w")
s="林海馨真好看!"
f.write(s)
f.close()
3.常用编码介绍
在操作文本文件时,经常会操作中文,这时候就经常会碰到乱码问题。
常用编码之间的关系如下:
4.write()/writelines()写入数据
write(a):把字符串 a 写入到文件中
writelines(b):把字符串列表写入文件中,不添加换行符
f=open(r"b.txt","w",encoding="utf-8")
s=["林海馨\n","任国亮\n","张倩\n"]
f.writelines(s)
5.close()关闭文件流
由于文件底层是由操作系统控制,所以我们打开的文件对象必须显式调用 close()方法 关闭文件对象。当调用 close()方法时,首先会把缓冲区数据写入文件(也可以直接调用 flush() 方法),再关闭文件,释放文件对象。
为了确保打开的文件对象正常关闭,一般结合异常机制的 finally 或者 with 关键字实现 无论何种情况都能关闭打开的文件对象。
try:
f=open(r"c.txt","w",encoding="utf-8")
s=["林海馨","富婆!"]
f.writelines(s)
except BaseException as e:
print("文件创建错误!")
finally:
f.close()
6.with 语句(上下文管理器)
with 关键字(上下文管理器)可以自动管理上下文资源,不论什么原因跳出 with 块,都能确保文件正确的关闭,并且可以在代码块执行完毕后自动还原进入该代码块时的现场。
with open(r"d.txt","w",encoding="utf-8") as f:
s=["林海馨\n","富婆!\n"]
f.writelines(s)
7.文本文件的读取
文件的读取一般使用如下三个方法:
1. read([size])
从文件中读取 size 个字符,并作为结果返回。如果没有 size 参数,则读取整个文件。 读取到文件末尾,会返回空字符串。
2. readline()
读取一行内容作为结果返回。读取到文件末尾,会返回空字符串。
3. readlines()
文本文件中,每一行作为一个字符串存入列表中,返回该列表
with open(r"e.txt","r",encoding="utf-8") as f: #此处要设置为只读模式,否则会报错
print(f.read(4))
4.enumerate()函数
enumerate()函数可以使原本文件中的每行内容都加上索引
eg:为文本文件每一行的末尾增加行号
with open("f.txt","r",encoding="utf-8") as f:
lines= f