Python文件操作
2021-01-16 13:13
                         标签:效果   指定   src   部分   方式   不为   二进制   你好   左移    可以显示当前文件指针位置,注意指针位置是按照字节计算的。 buffer缓冲区:缓冲区是一个内存空间,一般来说是一个FIFO队列,到缓冲区满了或者达到阀值,数据才会flush到磁盘。flush()将缓冲区数据写入到磁盘,close()关闭文件流,关闭前会调用flush()       总结规律: 上下文管理:一种特殊的语法,交给解释器去释放文件对象 Python文件操作 标签:效果   指定   src   部分   方式   不为   二进制   你好   左移    原文地址:https://www.cnblogs.com/fjjj/p/12823917.html文件常用IO操作——open

# r模式
f = open("test","r")  #只读
f.read()
f.write("abc")
f.close()
# w模式
f = open("test","w")  #只写打开
f.write("abc")
f.close()
# x模式
f = open("test","x")  #只写打开
f.read()
f.write("abc")
f.close()
# a模式
f = open("test","x")  #只写打开
f.read()
f.write("abc")
f.close()
文件指针
seek
tell
fil = open("test","a+") #打开文件
fil.write("abcd你好")
fil.seek(0) #指针回到起始位置
fil.seek(2,0) #指针相对于开始位置向左移动2个位置
print(fil.tell()) #查看当前指针位置
fil.close() #关闭文件流
buffering缓冲区

encoding编码
上下文管理
f = None
try:
    f = open(‘test‘)
    f.write("abc") # 文件是用只读模式打开,写入失败。
    f.close()
finally:
    if f!=None:
        f.close() #当发生异常,如果f不为空,关闭文件流。释放文件对象
del f
#使用with...as 语法,当代码块中出现异常时,会自动关闭f
with open("test") as f:
    f.write("abc") #因为是只读模式打开,所有会出错。写入失败
#测试f发现f已经关闭
f.closed 
f = open("test")
with f:
    f.write("abcd") #因为是只读模式打开,所有会出错。写入失败
#测试f,f已经关闭
f.closed