open文件操作

open()做文件操作的就是他
1.打开文件
#f=open("db","r")#只读
#f-open("db","w")#只写(它清空文件再写)
#f=open("db","x")#python3新加的,,这个如果文件存在报错,不存在可以让你创建并写内容。
#f=open("db","a")#a是追加
#+号表示同时读写一个文件
#r+可读写
#w+可读写
#x+可读写
#a+可读写
#加b表示以字节的形式操作
#rb或r+b
#wb或w+b
#xb或x+b
#ab或a+b
#注以加b形式打开读取到的内容是字节类型,写入时也需要字节类型
#2.操作文件
#read()无参数时读取全部,有b按字节,无b按字符。
#tell()获取当前指针位置(永远按字节来的)
#seek(1)指针跳转到指定位置(永远按字节来的)
#write()写数据 ,如果打开方式有b就是写字节如果无b就是写字符。
#close()关闭文件fileno 文件描述符
#flush 强刷
#readable 判断是否可读
#readline 仅读取一行
#truncate 截取 并将指针位置后的清空
#for循环文件对象f=open(nnnn)如下例:
#f=open("ad","r+")
#for line in f:
# print(line)

#通过源码查看功能

#3.关闭文件的两种方法
#f.close()
#with open("db") as f:
# pass
with open("ad","r",encoding="utf-8")as f1,open("db","w",encoding="utf-8") as f2:#同时打开两个文件,以with方法打开的时执行完毕自动关闭
# times=0
#for line in f1:
# times+=1
# if times<10:
# f2.write(line)
# else:
# break
for line in f1:
new_str=line.replace("alex","st")
f2.write(new_str)



#f=open("mi.py","r")
#data=f.read()
#print(data,type(data))
#f.close()
#f=open("mi.py","rb")#rb的话它就是读出来一个字节类型如果是r就是字符串类型。
#data=f.read()
#print(data,type(data)) #bytes表示字节类型。
#f=open("ad","ab")#ab就表示我们要向文件传一个字节类型,如果传字符串就报错了,,如果我们想传字节怎么办呢?
#f.write(bytes("呵呵",encoding="utf-8"))#write就是修改文件的操作,,这样就传了一个字节。
#f.close()#关闭文件

#f=open("ad","rd")#
f=open("ad","r+",encoding="utf-8")
#如果打开模式无b,则read是按照字符读取的
data=f.read(1)#读取数据
#print(data)
print(f.tell())#tell用来获取当前指针的位置永远是按字节
f.seek(f.tell())#seek调整当前指针的位置(字节位置)
f.write("8888")#write当前指针位置相后覆盖(修改)
f.close()#关闭文件
原文地址:https://www.cnblogs.com/zang963469010/p/5908674.html