zoukankan      html  css  js  c++  java
  • python 文件修改

    文件修改

    存在一个love的文件

     1 把我的心串一串
     2 串一株幸运草 串一个同心圆
     3 让所有期待未来的呼唤
     4 趁青春做个伴
     5 别让年轻越长大越孤单
     6 把我的幸运草种在你的梦田
     7 让地球随我们的同心圆
     8 永远的不停转
     9 向天空大声的呼唤说声我爱你
    10 向那流浪的白云说声我想你
    11 让那天空听得见
    12 让那白云看得见
    13 谁也擦不掉我们许下的诺言
    14 想带你一起看大海说声我爱你
    15 给你最亮的星星说声我想你
    16 听听大海的誓言
    17 看看执着的蓝天
    18 让我们自由自在的恋爱

    目的将“幸运草种在你的梦田”改成“幸运草种在axiang的梦田

    f = open("love","r",encoding='utf-8')
    f_new = open("love_new","w",encoding='utf-8')
    
    for line in f:
        if "幸运草种在你的梦田" in line:
            line = line.replace("幸运草种在你的梦田","幸运草种在axiang的梦田")
        f_new.write(line)
    
    f.close()
    f_new.close()

    我是把原来的内容改了之后写到新的文件中,如果需要文件名一致,可以将原来的文件以w模式打开,然后循环新创建的love_new里面的内容写到love文件中,即可完成

    上面的代码中指定了修改的内容,往往,我们需要根据实际情况,自己进行传参,想修改的内容,修改成什么样的

    可以导入sys模块使用sys模块中的argv方法,保存为file_update.py

    import sys
    
    f = open("D:\PycharmProjects\untitled\day3\love","r",encoding='utf-8')
    f_new = open("D:\PycharmProjects\untitled\day3\love_new","w",encoding='utf-8')
    
    find_str = sys.argv[1]
    replace_str = sys.argv[2]
    
    for line in f:
        if find_str in line:
            line = line.replace(find_str,replace_str)
        f_new.write(line)
    
    f.close()
    f_new.close()

    可以使用命令窗口执行

    python file_update.py 需要修改的内容 修改后的内容

    with的用法

    上面的代码中可以看到我们open文件的时候,最后都对文件进行close;

    可以使用with来进行自动的关闭文件

    上面的代码可以使用下方代码替换,其功能完全一样

    import sys
    
    find_str = sys.argv[1]
    replace_str = sys.argv[2]
    with open("D:\PycharmProjects\untitled\day3\love","r",encoding='utf-8') as f,
            open("D:\PycharmProjects\untitled\day3\love_new","w",encoding='utf-8') as f_new:
        for line in f:
            if find_str in line:
                line = line.replace(find_str,replace_str)
            f_new.write(line)
  • 相关阅读:
    Cookie和Session
    Csrf
    Django中间件
    ORM操作
    Django框架简介
    Django之模型的高级用法
    Linux基础(二)之命令
    01 numpy库(一)
    Django之缓存配置
    20 Django REST Framework 更改PUT/PATCH/DELETE的传参字段,默认为pk
  • 原文地址:https://www.cnblogs.com/axiangstudy/p/13693865.html
Copyright © 2011-2022 走看看