• 文件操作


    文件操作

    • 文件路径
      • 绝对路径 明确所有路径盘符
      • 相对路径 相对当前运行程序路径
    • 编码方式 utf-8gbk……
      • 以什么编码储存文件就要以什么编码打开文件,否则报错
    • 操作方式
      • 'r' 只读
        • 'rb' 二进制读取
      • 'w' 只写--无文件自动创建,有文件则覆盖
        • 'wb' 二进制写入

                f = open('文件.txt', 'wb')
                content = f.write('这是写入的数据'.encode('utf-8'))
                f.close()
                #结果,在当前路径下生成二进制文件
          
      • 'a' 追加
        • 'ab' 以bytes类型追加
      • 'r+' 读写-最常用的
        • 先读后写,后方插入
        • 先写后读,从头覆盖
          • 'r+b' 二进制读写
      • 'w+' 写读
        • 覆盖源文件了

    功能详解

    • f.read(n) 从光标处读取n个字符
    • f.readable() 是否可读
    • f.readline() 一行一行的读
    • f.readlines() 把每一行的内容变成列表的一个元素
    • f.seek(位置) 调节光标至字节位置后
      • utf-8 中文3字节,英文一个字母一个字节
    • f.tell() 返回光标所在位置
      f.seek(f.tell()-n) 技巧方法
    • f.truncate() 截取字符串,将当前光标后的所有内容删除
    • for循环查看 文件的每一行输出
    • with open('path', mode='r+', encoding=None) as f:
      • 这种写法没有close()
      • 可以同时打开多个
      • 缩紧写

    修改文件(补充)读取旧文件>>替换内容>>写进新文件>>删除旧文件>>重命名新文件与旧文件同名

            with open('file1.txt', 'r', 'utf-8') as f1, open('file2.bak', 'w', 'utf-8') as f2:
                for line in f1:
                    if '旧内容' in line:
                        line = line.repleace('旧内容', '新内容')  #假设将旧文件内容替换
                f2.write(line)
            #引用.os模块完成文件删除和重命名
            os.remove('file1.txt')
            os.rename('file2.bak', 'file1,txt')
            #完成文件的修改
  • 相关阅读:
    HBase On Spark
    Hive安装配置要点
    通过拆分,提高表的访问效率
    使用冗余统计表
    优化表的数据类型
    以题目为鉴,如何做数学笔记
    思维训练素材整理
    三角函数知识点
    穿针引线法的前世今生
    集合知识点
  • 原文地址:https://www.cnblogs.com/liliudong/p/9572735.html
Copyright © 2020-2023  润新知