• 文件操作


    1 文件操作

    1.1 模式

    基本操作

      r:只读

      w:只写(没文件创建新文件,有文件先清空)

      x:不存在就创建,存在就报错,只写

      a:追加,只写

    二进制(传输使用)

      rb:

      wb:

      xb:

      ab:

    +模式

      r+:读写

        读:从0开始读

        写:

          1.如果先读,最后追加

          2.主动seek,写从当前指针开始写

          3.不读先写的时候,会覆盖写

      w+:读写

      x+:读写

      a+:读写

        读:从文件最后位置开始读

        写:最后追加,主动seek也是最后追加

    1.2 指针

    seek  跳转到某个位置

    概述

    seek() 方法用于移动文件读取指针到指定位置。

    语法

    seek() 方法语法如下:

    fileObject.seek(offset[, whence])

    参数

    • offset -- 开始的偏移量,也就是代表需要移动偏移的字节数

    • whence:可选,默认值为 0。给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。

    实例

    以下实例演示了 readline() 方法的使用:

    文件 runoob.txt 的内容如下:

    1:www.runoob.com
    2:www.runoob.com
    3:www.runoob.com
    4:www.runoob.com
    5:www.runoob.com

    循环读取文件的内容:

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    # 打开文件
    fo = open("runoob.txt", "rw+")
    print "文件名为: ", fo.name
    
    line = fo.readline()
    print "读取的数据为: %s" % (line)
    
    # 重新设置文件读取指针到开头
    fo.seek(0, 0)
    line = fo.readline()
    print "读取的数据为: %s" % (line)
    
    
    # 关闭文件
    fo.close()

    以上实例输出结果为:

    文件名为:  runoob.txt
    读取的数据为: 1:www.runoob.com
    
    读取的数据为: 1:www.runoob.com

    tell:看指针位置

    1.3 文件操作里的方法

    trancate(x)  截取x个字符

    read()

      read(1):无b,读一个字符

      read(1):有b,读一个字节

    write()

      str:无b,写字符串

      bytes:有b,写字节

    readline ()   只读取一行

    readlines()   把文件读的每一行都添加到一个列表中(特别占内存)

    flush()   强行输入硬盘

    seek()   调整指针

      

  • 相关阅读:
    "pom.xml" could not be activated because it does not exist.
    spring boot启动STS 运行报错 java.lang.NoClassDefFoundError: ch/qos/logback/classic/LoggerContext
    @SpringBootApplication cannot be resolved to a type In STS
    Maven搭建之后的设置
    自动化部署工具
    康威定律
    Thrift简介
    JVM分代通俗解释
    过滤器和监听器之间的区别
    Configuring WS-Security UsernameToken and WS-SecureConversation (Symmetric Connection Creation)
  • 原文地址:https://www.cnblogs.com/amiee-785563694/p/6788736.html
Copyright © 2020-2023  润新知