|  | 
 
| 
鱼鱼们早上好
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  这是我看旧版课程写出的文件替换,因为自己不会而想分享一下,不是全自己写的,思路说是话好多问AI的,
 而且字符串的内置几乎都没记住全靠鱼总的扩展阅读
 哪里错了请指正,谢谢
 有更好的办法完善更好,我也好学学,谢谢啦
 我没运行,我没运行,我没运行
 这是个半成品
 # 编写一个程序,实现“全部替换”功能。
 # 流程:
 # 用户——输入需要替换的文件名字——需要替换的单词或者字符串——输入新的单词或字符串
 # 我方——接受对方文件名——接受对方单词or字符串——接受对方新的单词or字符串
 #设置函数需要三个传入参数(因为—接受对方文件名—接受对方单词or字符串—接受对方新的单词or字符串)
 #打开临时只读文件——处理文件替换需要用什么 1.空列表用于存储处理后的每一行内容  2.计数器归零,用于统计总共要替换的单词数量
 #所以需要用两个初始变量 一个赋值空列表 一个赋值为0
 #因为要全部替换 所以要把文件全都过滤 要用 for XX in 打开文件:
 # 把 临时过滤赋值 插入 旧内容 , 计算次数  ,替换文件到新文件  因为之前建立用的 列表    所以要用列表的方式
 #增加确定项目 判断 用户输入 确定  打开 临时写入文件 把之前的列表写入临时写入文件 关闭临时写入 关闭临时只读
 def Replace(file_name,rep_name,new_name):
 f_read = open(file_name,'r',encoding='utf-8')
 none_list = [ ]
 count = 0
 for filter_content in f_read:  #   filter _ content  过滤器 _ 内容
 if rep_name == filter_content:
 count = filter_content.count(rep_name) + count
 filter_content = filter_content.replace(rep_name,new_name)
 none_list.append(filter_content)  #把过滤器内容添加到建立的空列表中
 #{ .count(sub[, 起始位[, 结束位]])   }返回 sub 在字符串中不重叠的出现次数,可选参数起始结束
 #replace(old, new, count=-1)  返回一个将所有 old 参数指定的子字符串替换为 new 的新字符串;
 # count 参数指定替换的次数,默认是 -1,表示替换全部
 Determine_the_project = input(f'''{file_name}文件的{rep_name}内容共{count}全部替换为{new_name}新内容吗?\n
 如果确认请输入 : _yes_\n如果不确认请输入: _no_\n''')
 if Determine_the_project == '_yes_':
 f_write = open(file_name,'w',encoding='utf-8')
 f_write.writelines(none_list)
 f_write.close()
 
 f_read.close()
 
 file_name = input('请输入文件名') #file文件名
 rep_name = input('请输入需要替换的旧内容')  #rep代表名
 new_name = input('请输入代替旧内容的新内容')  #new新名
 Replace(file_name,rep_name,new_name)  # Replace 替换
 | 
 |