• 修改文件


    0.写文件会在缓冲区中满时才写入,想要写入需要。flush方法

      # f.flush() # 把缓冲区的文字强制写到文件中

    1.修改方式(1).简单方式:先打开文件,获取内容,修改内容 ,清空原来的内容,把新的写进去。

             f = open('username','a+')

             f.seek(0)

             all_str = f.read()  #获取的字符串   readlines是list

             new_str = all_str.replace('5566','7788')   #字符串的替代方法

             f.seek(0)   #    之前操作已经移动到最后需要移动到开头

             f.truncate()  #清空文件

             f.write(new_str)

            f.close()

    同一加前缀‘syz’(readlines读入)

      

    #syz_niuhanyang,78910 syz_zll,78910 syz_fyr,78910

    f = open('username','a+')

    f.seek(0)

    all_str = ''

    for s in f:

          new_s ='syz_'+s

          all_str=all_str+new_s

    f.seek(0)

    f.truncate() #清空文件内容

    f.write(all_str)

    f.close()

    #readlines 对于大文件占内存  一次全取进去

    修改文件(2)   系统一般都用此文件

    #打开2个文件

    # a文件

    # 写一行写到b文件

    # a.txt a.txt.bak

    # 删掉a文件,b文件名字改成a文件名

    # flower

    import os  # os模块

    with open('words',encoding='utf-8') as fr,open('.words.bak','w',encoding='utf-8') as fw:

          for line in fr:

               new_line = line.replace('花','flower')

               fw.write(new_line)

    os.remove('words') #删除文件

    os.rename('.words.bak','words') #改名

    *writelines 可以写list 自动循环  write只能写入字符串

  • 相关阅读:
    php简单的server登陆验证
    CentOS更新php(PHP 5.2+ is required问题)
    CentOS 5.5 x86_64下安装oci8与pdo_oci扩展
    httpd.conf详解
    Thinkphp中去除URL里的index.php
    Oracle使用虚拟表dual一次插入多条记录【摘录】
    【问题】apache目录403错误
    mysql中存储引擎MyISAM与InnoDB的一些区别
    从开辟蓝海到保卫蓝海(三)
    答MM问:经济泡沫破了不更好吗?
  • 原文地址:https://www.cnblogs.com/cslw5566/p/8858737.html
Copyright © 2020-2023  润新知