码迷,mamicode.com
首页 > 其他好文 > 详细

文件及文件操作

时间:2020-03-13 18:56:58      阅读:51      评论:0      收藏:0      [点我收藏+]

标签:默认   控制文件   ima   文本文件   mic   位置   清空文件   没有   打开   

1,文件:操作系统提供给用户/应用程序操作硬盘的接口

  技术图片

 

 

 控制文件读写操作模式:t模式(txt),b模式(bytes),但是t,b模式不能单独使用,必须跟r,w,a结合使用

  t模式(txt):

  1. 读,写都是以字符串为单位
  2. 文本文件
  3. 必须指定encoding = "编码格式"  

  当文件打开读完后关闭就不能再读,否则会报错

没有指定encoding操作系统默认编码:

  max,Linux系统默认:utf-8

  Windows系统默认:gbk

 

2,

r模式:只读

    • 当文件不存在时,读取文件则报错
    • 当文件存在时指针跳到开始位置

read :一次性读取所有数据(但不适合读文件大的数据)

  • with open("r.txt","r",encoding= "utf-8") as flie:
        res = flie.read()
        print(res)
    
        res1 = flie.read()#当第二次读取时是空的
        print(res1)
    
        #运行结果
        hhgfghfsgjf 
                         

     

          

w模式 :只写

    • 当文件不存在时,则创建文件
    • 当文件存在时,则清空文件内容,指针跳到开始位置

  强调:

  1. 在w模式中打开文件没有关闭的情况下,连续写入新的数据总跟在原来的数据后增加
  2. 如果以w模式打开文件则内容会被清空  
  • with open("r.txt","w",encoding= "utf-8") as flie:
        print(flie.write("啦啦\n"))
        print(flie.write("丽丽\n"))
    
        #运行结果
        啦啦
        丽丽

     

 

w模式 :只追加

    • 当文件不存在时,则创建文件
    • 当文件存在时,指针跳会直接调到末尾

a模式与w模式的区别:

  • 相同:都可以追加内容
  • 不同:
    • a模式重新打开不会清空内容,指针会停在内容末尾
    • w模式重新打开则会清空内容,指针会停在开始位置

 

文件copy 

with open("r.txt","rt",encoding= "utf-8") as flie1 ,    open("f.txt","wt",encoding="utf-8") as flie2 :
    res = flie1.read()
    flie2.write(res)

 

+ : + 不能单独使用,必须结合r,w,a使用

  如果源文件中有内容则会会被覆盖 

with open("f.txt","rt+",encoding= "utf-8") as flie1:
    flie1.write("认真完成作业")#可读可写


with open("f.txt","wt+",encoding= "utf-8") as flie1:
    flie1.write("认真完成作业")#可读可写,重新打开则数据清空


with open("f.txt","at+",encoding="utf-8") as flie1:
    flie1.write("认真完成作业")#可读可写可追加,在旧数据后添加新数据

 

文件及文件操作

标签:默认   控制文件   ima   文本文件   mic   位置   清空文件   没有   打开   

原文地址:https://www.cnblogs.com/zhenghuiwen/p/12487866.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!