| 
 | 
 
 
发表于 2020-7-12 21:54:49
|
显示全部楼层
 
 
 
 本帖最后由 Twilight6 于 2020-7-12 21:56 编辑  
 
 
 
 
 
错误1: 
你将 open 里面的 file_name 加上引号是指打开名为 file_name 文件了,而且 你 w 打开会导致覆盖你的文件为空文件 
 
错误2: 
都加上了引号,表示的是这两个字符串是否相等 
 
显然不相等,而且这里这样的判断没用,因为list1 里面的是文件一行一行的字符串内容,而判断你输入的部分字符 
 
错误就不说了,楼上好像总结的差不多了,参考下下面的代码吧: 
 
- file_name=input("请输入文件名:")
 
 - f=open(file_name)
 
 - yuan=input("请输入需要替换的单词或字符:")
 
 - ti=input("请输入新的单词或字符:")
 
  
- list1=list(f)
 
 - f.close()
 
 - length=len(list1)
 
 - count=0
 
 - for i in range(length):
 
 -     if yuan in list1[i]:
 
 -         count += list1[i].count(yuan)
 
 -         list1[i] = list1[i].replace(yuan,ti)
 
  
- print("文件",file_name,"中共有",count,"个",yuan)
 
 - print("您确定要把所有的【",yuan,"】替换为【",ti,"】吗?")
 
 - answer=input("【Yes/No】:")
 
 - if answer=="Yes":
 
 -     f = open(file_name, 'w')
 
 -     f.writelines(list1)
 
 -     f.close()
 
  复制代码 
 
 
 
 |   
 
 
 
 |