zoukankan      html  css  js  c++  java
  • Python使用笔记005-文件操作(二)

    1.1 打开文件模式

    # r   r+   r+读是没问题的,写的话,会覆盖原来的内容,文件不存在时会报错
    # w w+ w+用来新的文件没问题,旧的文件会覆盖原来的内容
    # a a+ a+写是追加,读不到是因为指针已经被移到最后,新文件也不会报错,a+打开文件是直接将指针移到最后

    1.2 文件操作其他方法

    1 #用with打开文件,会自动关闭文件
    2 with open('数据.txt','r+',encoding='utf-8') as f:
    3     f.truncate()  # 清空文件内容
    4     f.flush()  # 不管缓冲区有没有满,立即更新到磁盘

    1.3 修改文件

    1.暴力操作

     1 #1、把文件内容全部读取出来
     2 #2、把文件内容替换
     3 #3、清空掉原来文件内容
     4 #4、再将文件内容写入到文件
     5 #with会自动关闭文件
     6 #这种只适合修改小文件
     7 with open('数据.txt','r+',encoding='utf-8') as f:
     8     content = f.read()#读取所有文件
     9     new_content = content.replace('100','100000')
    10     f.seek(0)
    11     f.truncate()
    12     f.write(new_content)
    13     f.flush()#不管缓冲区有没有满,立即更新到磁盘

    2.用两个文件来操作

     1 #2、两个文件操作
     2     #1、r模式打开a文件,w模式打开b文件
     3     #2、逐行读取a文件内容,读取之后替换内容
     4     #3、把替换完的内容写到b文件里面
     5     #4、把a文件删除,把b文件的名字改为a文件
     6 import os
     7 with open('数据.txt','r',encoding='utf-8') as f1 ,open('数据2.txt','w',encoding='utf-8') as f2:
     8     for line in f1:
     9         new_line = line.replace('4','4444')
    10         f2.write(new_line)
    11 os.remove('数据.txt')#删除文件
    12 os.rename('数据2.txt','数据.txt')#修改文件名字
  • 相关阅读:
    mybatis批量插入数据
    oracle的dmp数据文件的导出和导入以及创建用户
    maven安装第三方jar包到本地仓库
    IntelliJ IDEA 注册码,激活
    分布式事务实现-Spanner
    Redis Cluster原理
    twemproxy源码分析
    Paxos可容错的一致性协议
    UpdateServer事务实现机制
    Coroutine及其实现
  • 原文地址:https://www.cnblogs.com/cjxxl1213/p/12814569.html
Copyright © 2011-2022 走看看