安12 发表于 2018-7-18 23:10:49

029 更换 找不到我所要更换的字

def change(file_name,old,new):
    count=0
    f1=str(open(file_name))
    length=len(f1)
    list1=[]
    for each in f1:
      count+=1
      
      if each==old:
            list1.append(count)
    print('文件%s中共有%d个%s'%(file_name,len(list1),old))
    a=input('您确定要把所有的%s的替换成%s吗'%(old,new))
    if a=='yes':
      change1(old,new)

def change1(old,new):
      for each in list1:
      f1=str(new)
       

file_name=input('输入文件名')
old=input('需要更换的字')
new=input(更改成啥')
change(file_name,old,new)





BngThea 发表于 2018-7-19 08:35:50

用str将open对象转成字符串不是很合理
还是用
f = open()
f1= f.read()

而且你替换的是一些字符,不是一行,所以查找的时候用用 in 判断,替换的时候用str的replace方法好点

子午狼 发表于 2018-7-19 09:59:46

字符串能直接这么替换???
页: [1]
查看完整版本: 029 更换 找不到我所要更换的字