zoukankan      html  css  js  c++  java
  • python文件操作

    1、打开文件(使用open或是file函数)

      open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

      

      

      ps:使用w模式时要慎重,避免操作不当删除原有的数据

        r+模式时,首先进行文件的读操作,将文件指针移到文件末尾,再向文件中写入内容,新写入的内容直接追加到文件后面;如果直接进行文件的写操作,此时  文件指针在文件的开头,则新写入的内容会从文件开始替换原有的内容。

        open()读取出来的文件对象是可迭代的,使用for循环可以依次打印文件的每一行内容

    2、关闭文件

      close():文件操作完毕后务必要关闭文件,python中可以不用关闭,因为python有自动垃圾回收机制。

    3、文件读取

      read(size=-1):从文件读取size个字符,当未给定size或是给定负值的时候,读取剩余的字符,然后作为字符串返回。read()默认从上次读取的地方继续读取

      readline():每次读取一行,当超出范围时返回一个空字符串

      next():每次读取一行,当超出范围时给出警示StopIterator,不会无限制的取空字符串

    4、文件写入

      write(str):将字符串str写入文件

      writelines(seq):想文件写入字符串序列seq,seq应该是一个返回字符串的可迭代对象

    5、移动文件指针

      seek(offset,from):在文件中移动文件指针,从from(0代表文件起始位置,1代表当前位置,2代表文件末尾)开始偏移offset个字节

        

      tell():返回文件当前的位置

    6、提交更新

      flush():在文件的写入时,一般写完后使用close()方法关闭文件,内容才能保存到文件中;但如果在写入文件的中间要求存储(如断点续存),则使用flush()方法。

    7、文件操作实例

      

      代码实现:

      

      

      

      统计文件中一共出现了对少次某个字符串:

      import re
      #统计文件中hello的个数
      count = 0
      f = open("F:/test.txt")
      strList = f.readlines()
      for i in strList:
        a = re.findall(r"hello", i)
        if len(a): #匹配有hello字符串
          count += len(a)
      print("一共有%d个'hello'" % count)
      #文件操作完毕一定要关闭文件
      f.close()

    8、文件操作中with的使用

      

      

     9、文件对象方法

        

      

  • 相关阅读:
    Spark监控官方文档学习笔记
    Maven打包排除某个资源或者目录
    源码中的哲学——通过构建者模式创建SparkSession
    CentOS7启动Tomcat报错:./startup.sh: Permission denied
    Centos7 安装 redis
    centos7 查找jdk 安装路径
    Activemq(centos7)开机自启动服务
    /var/run/redis_6379.pid exists, process is already running or crashed解决方案
    activeMQ 修改端口号
    CentOS7.5 通过wget下载文件到指定目录
  • 原文地址:https://www.cnblogs.com/studyDetail/p/6440431.html
Copyright © 2011-2022 走看看