python的w+到底是什么

时间:2021-06-11 21:15:10

python 文件处理的打开方式有很多种,

os.mknod("test.txt") 创建空文件
fp = open("test.txt",w) 直接打开一个文件,如果文件不存在则创建文件

open 模式:

w 以写方式打开,
a 以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+ 以读写模式打开
w+ 以读写模式打开 (参见 w )
a+ 以读写模式打开 (参见 a )
rb 以二进制读模式打开
wb 以二进制写模式打开 (参见 w )
ab 以二进制追加模式打开 (参见 a )
rb+ 以二进制读写模式打开 (参见 r+ )
wb+ 以二进制读写模式打开 (参见 w+ )
ab+ 以二进制读写模式打开 (参见 a+ )

 

但r+和w+写的不清楚。

w+是打开后,清空原有内容,成为一个新的空文件,对这个空文件具有读写权限。

r+是打开后,可以读取文件内容吧,保存原有内容,追加写内容,写动作则是追加的新内容。其作用和a+基本相同。

测试代码

import os
import sys

dir= os.path.dirname(os.path.abspath(__file__))
file_path='%s/test.txt'  % dir
file= open(file_path,'w+')

print file.read()
#for line in file:
#     print line
file.write('testxxx3xx33333333333')
print file.read()
file.close()