1-14文件操作
读写文件等操作¶
1.在当前路径下创建文件夹mkdir或者makedirs
2.打开当前路径下的文件夹,并创建文件open
3.以写入模式打开新文件读写模式:
r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件¶
常用读写模式¶
如:'rb','wb','r+b'等等¶
读写模式的类型有:¶
rU 或 Ua 以读方式打开, 同时提供通用换行符支持 (PEP 278)¶
w 以写方式打开,¶
a 以追加模式打开 (从 EOF 开始, 必要时创建新文件)¶
r+ 以读写模式打开¶
w+ 以读写模式打开¶
a+ 以读写模式打开¶
rb 以二进制读模式打开¶
wb 以二进制写模式打开¶
ab 以二进制追加模式打开¶
rb+ 以二进制读写模式打开¶
wb+ 以二进制读写模式打开¶
ab+ 以二进制读写模式打开¶
W 若文件存在,首先要清空,然后重新创建文件¶
a 把所有的数据追加到文件的尾部,即使seek指在其他的位置,如果文件不存在,则重新创建¶
4.注意:数据写完后,要close()
In [1]:
import os
os.mkdir("./data")#如果有同名的文件夹则会报错,必须在创建新的文件夹
OP=open('./data/tang.txt','w')
OP.write("hello python\n tang yu di\n jin tian qi bu cuo\n")
OP.close()
In [2]:
%%writefile tang.txt
hello python
tang yu di
jin tian qi bu cuo
In [3]:
txt=open('./tang.txt')
In [4]:
txt_read=txt.read()
print(txt_read)
In [5]:
txt=open('./tang.txt')#打开一次只能读一次
lines=txt.readlines()#lines把每句话变成一个元素再组成一句话,\n表示回车
print(type(lines)) print(lines)
In [6]:
for line in lines:
print('cur_line:',line)
In [7]:
txt.close()
In [8]:
txt=open('tang_write.txt','w')#w模式再次执行会覆盖之前数据
txt.write('jin tian qi bu cuo\n') txt.write('ma ru jiao\n') txt.close()
In [9]:
txt=open('tang_write.txt','a')#a是追加模式不覆盖
txt.write('123\n') txt.write('456\n') txt.close()
In [10]:
txt1=open('tang_write.txt','w')
for i in range(5):
txt1.write(str(i)+'\n')
txt1.close() #写入数据写完后一定要close不然会写入失败
txt2=open('tang_write.txt','r')
print(txt2.read())
In [11]:
txt=open('tang_write.txt','w')
try:
for i in range(100):
10/(i-50)
txt.write(str(i)+'\n')
except Exception:
print('error:',i)
finally:
txt.close()
In [12]:
with open('tang_write.txt','w')as f:
f.write('jin tian qi bu cuo ')#用 with open()as 变量名 就可以不用close,它会自动close
此资源来自https://www.cnblogs.com/AI-robort/,博客园的karina512。