• 文件操作的文件修改


    文件操作改的流程: 1, 以读的模式打开原文件。 2,以写的模式创建一个新文件。 3,将原文件的内容读 出来修改成新内容,写入新文件。 4,将原文件删除。 5,将新文件重命名成原文件。

    import os
    # 1, 以读的模式打开原文件。
    # 2,以写的模式创建一个新文件。
    with open('alex自述',encoding='utf-8') as f1,
            open('alex自述.bak',encoding='utf-8',mode='w') as f2:
    # 3,将原文件的内容读出来修改成新内容,写入新文件。
        for line in f1:
    # 第一次循环 SB是老男孩python发起人,创建人。
        	new_line = line.replace('SB', 'alex')
    		f2.write(new_line)
    os.remove('alex自述')
    os.rename('alex自述.bak','alex自述')
    # 有关清空的问题:
    # 关闭文件句柄,再次以w模式打开此文件时,才会清空。
    # with open('文件的写', encoding='utf-8',mode='w') as f1:
    # for i in range(9):
    # f1.write('恢复贷款首付款')
    

      

    优点1: 不用手动关闭文件句柄
    # with open('文件的读',encoding='utf-8') as f1:
    # print(f1.read())
    # 优点2:
    with open('文件的读', encoding='utf-8') as f1,
    open('文件的写', encoding='utf-8', mode='w')as f2:
    print(f1.read())
    f2.write('hfdsjkghkajhsdjg')


      **缺点:这里要注意一个问题,虽然使用with语句方式打开文件,不用你手动关闭文件句柄,比较省事儿,但是依靠其自动关闭文件句柄,是有一段时间的,这个时间不固定,所以这里就会产生问题,如果你在with语句中通过r模式打开文件,那么你在下面又以a模式打开文件,此时有可能你第二次打开文件时,第一次的文件句柄还没有关闭掉,可能就会出现错误,他的解决方式只能在你第二次打开此文件前,手动关闭上一个文件句柄。**

  • 相关阅读:
    最近公共祖先
    洛谷 P1076 寻宝 解题报告
    洛谷 P1121 环状最大两段子段和 解题报告
    洛谷 P3705 [SDOI2017]新生舞会 解题报告
    洛谷 P1381 单词背诵 解题报告
    洛谷 P3155 [CQOI2009]叶子的染色 解题报告
    洛谷 P3237 [HNOI2014]米特运输 解题报告
    洛谷 P2345 奶牛集会 解题报告
    洛谷 P1582 倒水 解题报告
    数论知识荟萃
  • 原文地址:https://www.cnblogs.com/biu-py/p/10993841.html
Copyright © 2020-2023  润新知