• 一个简单的文件字符替换代码


    思路:直接遍历文件的所有行,对于每一行进行目标字符串换,并将替换后的内容保存到一个列表中。最终用 file.writelines() 函数将替换后的内容重新写入文件即可。

    当然,这个方法相当于将所有文件内容都读了一边并且写了一遍。我们可以直接在读的同时替换效率更高一些,但其代码同样简单,就不写了。。

    代码:

     1 # 用户输入"xxx.txt"类文档文件名
     2 
     3 # 用户输入被替换的"待替换字"
     4 
     5 # 用户输入替换目标"新的字"
     6 
     7 # 用户判断是否全部替换 yes/no
     8 
     9 def file_replace(file_name, rep_word, new_word):
    10     f_read = open(file_name)
    11 
    12     content = []
    13     count = 0
    14 
    15     for eachline in f_read:
    16         if rep_word in eachline:
    17             count = count + eachline.count(rep_word)
    18             eachline = eachline.replace(rep_word, new_word)
    19         content.append(eachline)
    20     print('===========')
    21 
    22     decide = input('
    文件 %s 中共有 %s 个【%s】
    您确定要把所有的【%s】替换为【%s】么?
    【yes/no】:'
    23          %(file_name, count, rep_word, rep_word, new_word))
    24 
    25     if decide in ['yes', 'Yes', 'YES']:
    26         f_write = open(file_name, 'w')
    27         f_write.writelines(content)
    28         f_write.close()
    29         print('更改成功')
    30     else:
    31         print('您放弃了更改')
    32 
    33     f_read.close()
    34 
    35 file_name = input('请输入文件名(请输入绝对路径):')
    36 rep_word = input('请输入要替换的单词或字符: ')
    37 new_word = input('请输入新的字符: ')
    38 file_replace(file_name, rep_word, new_word)
    View Code
  • 相关阅读:
    Python基础之元组tuple(带了枷锁的列表)
    Python基础之元组tuple(带了枷锁的列表)
    Python基础之列表
    Python基础之列表
    穷举法解决这个问题(1,2)
    二分查找
    正則表達式
    Restful WebService简介
    杭电1285确定比赛名次
    ACdream区域赛指导赛之手速赛系列(5) 题解
  • 原文地址:https://www.cnblogs.com/geloutingyu/p/8601202.html
Copyright © 2020-2023  润新知