Python——fd
定义
fd为:file desction ,文件描述对象。 用于操作文件内容的对象
python的相对路径不加/,以模块位置为相对路径!
方法
open(file , mode="r", encoding="")
参数:
file:文件路径。python相对路径为文件所在位置
mode:读取模式。w写模式,会覆盖,r读模式。
wb二进制写模式,会覆盖,rb二进制读模式。
a追加模式,不会覆盖
+读写模式,可与其他模式混合使用
encoding:设置字符集。 二进制模式不能设置字符集
返回值:fd
返回值意义:返回fd对象
作用:读取指定路径、指定模式、指定字符集下的文件。获取fd对象
fd.read([n])
参数:
n:读取字符个数。
如果省略读取全部
返回值:str
返回值意义:获取n个字符的字符串。
作用:获取n个字符的str,在此读取从上次读取的位置继续读取。如果是二进制模式返回n个的字节
fd.readline()
参数:无
返回值:str
返回值意义:返回一行的str
作用:获取文件中一行内容。
fd.readlines()
参数:无
返回值:list
返回值意义:返回文件每行文本字符串的列表
作用:获取文件每行文本字符串的列表。一般二进制文件用此方法直接操作
fd.write( str )
参数:字符串
返回值:无
返回值意义:无
作用:将str写入到fd定义的文件中
上下文管理语句
使用with管理 fd对象,在with块结束后fd会自动关闭。这么做为了修改的内容能够正确保存
with open(file="demo.jpg","rb") as fd: print(fd.readlines())
with只能管理实现 __enter__() 方法、__exit__()方法的对象
在进入的时候调用__enter__()
在离开的时候调用__exit__()
使用
# 1.读取a.txt的内容,写入到b.txt中 with open(file="a.txt",mode="r",encoding="utf-8") as fd_read: with open(file="b.txt",mode="w",encoding="utf-8") as fd_write: content = fd_read.read() fd_write.writelines(content)
# 2.读取demo.jpg,写入demo_new.jpg with open(file="demo.jpg",mode="rb") as fd_read: with open(file="demo_new.jpg",mode="wb") as fd_write: fd_write.write(fd_read.read())
未来,fd。 二进制读取都有read(),一次性读取全部内容。然后进行写入

浙公网安备 33010602011771号