zoukankan      html  css  js  c++  java
  • 十三 —— 文件读写

    f = open(filename, mode)

    filename:文件路径

    mode:打开文件的模式,默认只读 r。

      打开模式分为如下:

        a、r —— 只读。默认模式,如果文件不存在就报错,存在就正常读取

        b、w ——只写。如果文件不存在,新建文件然后写入;若存在,先清空文件内容,再写入。

        c、a ——追加。如果文件不存在,新建文件,然后写入;如果存在,在文件的最后追加写入。

        d、x ——新建。如果存在则报错,如果不存在就新建文件,然后写入内容,比w模式更安全。

        e、b ——二进制模式。比如rb、wb、ab,以bytes类型操作数据。

        f、+ ——读写模式。比如r+、w+、a+

    文件读取时,read()、readline()、readlines()的区别:

    1、f.read(size) 

      读取一定大小的数据,size为数据时,用于指定读取量。若无size,则一次性读取所有文件内容。

    2、f.readline()

      从文件中读取一行内容,这种方法,不可回头,读过的不能再读了。

    3、f.readlines()

      一次性读取整个文件内容,不同于read()的是,他返回的是list,方便我们遍历哦

    注:一般小文件用read(),大文件就用readlines()

        

    4、f.write

    将数据写入文件内, 文件进行写入时,若没执行close()方法,则所有的操作都在内容中操作。要立刻把写入操作反应到本地硬盘时,则使用clush(),不过这容易造成数据不一致,慎用!!!

    5、f.tell()

      返回文件读写指针当前所处的位置,它是从文件开头开始算起的字节数

    6、f.seek()

      如果要改变位置指针的位置,可以使用f.seek(offset,from_what)方法。seek()经常和tell()方法配合使用。

      offset表示偏移量。from_what的值,如果是0表示从文件开头计算,如果是1表示从文件读写指针的当前位置开始计算,2表示从文件的结尾开始计算,默认为0。

      seek(x,0):从起始位置即文件首行首字符开始移动x个字符。

      seek(x,1):表示从当前位置往后移动x个字符。

      seek(-x,2):表示从文件的结尾往前移动x个字符。

    7、f.close()

      关闭文件对象。当处理完一个文件后,调用f.close()来关闭文件并释放系统的资源。文件关闭后,如果尝试再次调用该文件对象,则会抛出异常。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了,或者更糟糕的结果。

    with关键字用于python的上下文管理器机制

      为了防止打开文件,在操作过程中出现异常/错误/忘记执行close()方法,文件非正常关闭等可能导致文件泄露、破坏的问题。python的with关键字可以保证文件被正常关闭。

    
    

  • 相关阅读:
    赶紧收藏吧!MyBatis-Plus万字长文图解笔记,错过了这个村可就没这个店了
    这篇建议java开发都看看,对Java方法及加深理解的很深,值得一看!
    秒极啊!手把手带你进行shiro授权拦截器的重写,学到了学到了
    java面试复习重点:类的管理及常用工具,教你抓住面试的重点!
    手撸一个外卖点餐系统后台,可以写上简历的实战项目!
    JVM类加载机制详解,建议看这一篇就够了,深入浅出总结的十分详细!
    这份SpringMVC执行原理笔记,建议做java开发的好好看看,总结的很详细!
    iOS-----GitHub上比较齐全的iOS 工具和App
    iOS-----AVFoundation框架的功能详解
    iOS-----UIScrollView
  • 原文地址:https://www.cnblogs.com/KeenaCherry/p/12078769.html
Copyright © 2011-2022 走看看