python基础学习——文件处理模式:读r&写r&追加a&r+可读可写

1、文件处理流程

  1)打开文件,得到文件句柄并赋值给一个变量

  2)通过句柄对文件进行操作

  3)关闭文件

  4)文件读写的参数必须是字符串

  5)样例

f=open("陈情令","r",encoding="utf8") #open("陈情令",encoding="utf8")文件句柄,
# "陈情令"是文件路径,当文件在同一层级路径时,可以直接写文件名,取相对路径
#f就是变量
#默认为只读模式r data=f.read()#读取文件全部内容 print(data) f.close()#关闭文件

2、文件处理:读模式

f=open("陈情令","r",encoding="utf8") #open("陈情令",encoding="utf8")文件句柄,
print("第1行:",f.readline(),end="") #去掉换行
print("第2行:",f.readline())
print("第3行:",f.readline())
print("第4行:",f.readline())
print("第5行:",f.readline())
print("第6行:",f.readline())
print(f.readable()) #判断文件模式是否是可读模式
print("第7行:",f.readline())
print("第8行:",f.readline())
f.close()
方式二:
f=open("陈情令","r",encoding="utf8") #open("陈情令",encoding="utf8")文件句柄,
print("第1行:",f.readline(),end="") #去掉换行
print("第2行:",f.readline())
print("第3行:",f.readline())
print(f.readable()) #判断文件模式是否是可读模式
data1=f.readlines()#读取文件所有内容,放到一个列表当中
print(data1)

f.close()

3、文件处理:写模式

   如果文件存在内容,启动写模式时,会清空文件内容,等待写入

   如果文件不存在,启动写模式时,会创建一个新文件,等待写入,写模式只能写不能读

f=open("肖战哥哥","w",encoding="utf8") 
print(f.writable())
f.write("1111\n22222\nI love you 战哥\n")
f.writelines(["祝福\n","我爱你战哥"])
f.close()

4、文件处理:追加模式a

f=open("肖战哥哥","a",encoding="utf8") 
f.write("平静\n自我\nI love you 战哥\n")
f.writelines(["不忘初心继续前进","爱你"])
f.close()

5、文件其他处理:可读可写r+  和 自动关闭文件with

#可读可写r+
f=open("肖战哥哥","r+",encoding="utf8")
data=f.read()
print(data)
f.write("I love you 战哥\n")
f.close()
with open("肖战哥哥","r",encoding="utf8") as f1,\
    open("王一博酷盖","w",encoding="utf8") as f2:
    data=f1.read()
    f2.write(data)
#从原文件f1中读取全部数据,将f1数据写到第二个文件f2中去
#with会同时关闭f1和f2文件

 6、文件处理的b模式:原生文件处理方式:二进制

  1)文件默认的处理方式是文本方式 rt \wt\at处理,但是图片和视频都是二进制方式处理

  2)二进制方式处理的文件是可以跨平台的

#方式一:rb

f=open("陈情令","rb") #b方式不可以指定编码
data=f.read()
print(data)
print(data.decode("utf8"))
f.close()

#b'\xe8\x82\x96\xe6\x88\x98\xe5\x93\xa5\xe5\x93\xa5\xe5\x8a\xa0\xe6\xb2\xb9\xef\xbc\x8c\xe6\x88\x91\xe7\x9a\x84\xe5\x81\xb6\xe5\x83\x8f\xef\xbc\x81\r\n\xe6\xa6\x9c\xe6\xa0\xb7\xe7\x9a\x84\xe5\x8a\x9b\xe9\x87\x8f\xef\xbc\x8c\xe6\x88\x91\xe4\xb9\x9f\xe8\xa6\x81\xe5\x8a\xa0\xe6\xb2\xb9\xef\xbc\x81\r\n\xe4\xb8\x8d\xe5\xbf\x98\xe5\x88\x9d\xe5\xbf\x83\xef\xbc\x8c\xe8\xb4\xb5\xe5\x9c\xa8\xe5\x9d\x9a\xe6\x8c\x81\xef\xbc\x81\r\n\xe4\xbb\xbb\xe4\xbd\x95\xe4\xba\x8b\xe6\x83\x85\xe9\x83\xbd\xe8\xa6\x81\xe5\x9d\x9a\xe6\x8c\x81\xef\xbc\x8c\xe5\x9d\x9a\xe6\x8c\x81\xe8\x87\xaa\xe5\xb7\xb1\xe7\x9a\x84\xe5\x88\x9d\xe5\xbf\x83\xef\xbc\x8c\xe5\x8a\xaa\xe5\x8a\x9b\xef\xbc\x8c\xe7\x9b\xb8\xe4\xbf\xa1\xe8\x87\xaa\xe5\xb7\xb1\xef\xbc\x8c\xe6\x89\x8d\xe5\x8f\xaf\xe8\x83\xbd\xe5\xbe\x97\xe5\x88\xb0\xe8\x87\xaa\xe5\xb7\xb1\xe6\x83\xb3\xe8\xa6\x81\xe7\x9a\x84\xe7\xbb\x93\xe6\x9e\x9c\xef\xbc\x8c\xe6\x9c\x9f\xe5\xbe\x85\xe8\x87\xaa\xe5\xb7\xb1\xe7\x9a\x84\xe5\xb0\x8f\xe5\xae\x87\xe5\xae\x99\xe7\x88\x86\xe5\x8f\x91\r\n\xe9\x9d\xa0\xe4\xba\xba\xe4\xb8\x8d\xe5\xa6\x82\xe9\x9d\xa0\xe8\x87\xaa\xe5\xb7\xb1\r\n\xe8\x87\xaa\xe5\xb7\xb1\xe5\xbc\xba\xe5\xa4\xa7\xe4\xba\x86\xef\xbc\x8c\xe5\xae\x89\xe5\x85\xa8\xe6\x84\x9f\xe8\x87\xaa\xe5\xb7\xb1\xe7\xbb\x99'
#wb/ab

f=open("肖战哥哥","wb") #b方式不可以指定编码
f.write(bytes("赞赞爱你\n",encoding="utf8"))
f.write("123木头人\n".encode("utf8"))
f.close()

7、文件操作方法

 

posted on 2019-10-17 23:48  你若盛开,清风自来~  阅读(560)  评论(0编辑  收藏  举报