文件写
文件的打开方式 | 描述 |
---|---|
r | 以只读方式打开文件,这是默认模式。如果不存在则产生FileNotFoundError异常 |
w | 打开一个文件只用于写入。如果该文件已存在则打开文件,并清空之前内容。如果该文件不存在,创建新文件 |
x | 写模式,新建一个文件,如果该文件已存在则会产生FileExistsError异常 |
a | 打开一个文件用于追加。如果该文件已存在,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入 |
b | 二进制模式 |
t | 文本模式 (默认) |
+ | 在r/w/x/a的基础上使用打开一个文件进行更新(可读可写) r+:在文件末尾进行追写 |
<f>.close() | 将文件关闭 |
对列表中的元素做同一操作然后将其写入文件join方法是一个不错的选择
用一个简单的例子来看看。我们把一串连续的数字用空格相隔写入文件中
f=open("fanme.txt","w")
for i in range(6):
f.write(str(i))
f.close()
f=open("fanme.txt","r+")
txt=f.read()
ls=' '.join(txt)
f.write(ls)
f.close()
但是现在还不懂在read和append模式下用plus没有效果
f=open("fanme.txt","r+")
for i in range(6):
f.write(str(i))
txt=f.read()
print(txt)
ls=' '.join(txt)
print(ls)
f.write(ls)
f.close()
'这样只能最开始的wtite,接下来的read就出问题了'
文件内容读取
文件的读取方式 | 描述 |
---|---|
<f>.read(size=-1) | 读入全部数据,给出参数,则读入前size个字节 |
<f>.readline(size=-1) | 读入一行的数据,给出参数,则读入前size个字节 |
<f>.readlines(size=-1) | 读入文件所有行,形成以行为元素的列表。给出参数,则读入前size个元素 |
文件写入
文件的写入方式 | 描述 |
---|---|
<f>.write(str) | 写入字符串str或字节流str |
<f>.writeline(ls) | 写入一个元素全是字符串的列表 ls=[‘你好’,‘世界’] f.writeline(ls) 你好世界 |
<f>.seek(offset) | 改变当前文件的指针,offset有 0-文件头;1-当前位置;2-文件末尾 f.seek(0) 回到文件的开头位置 |
因为