qiuyouzhi 发表于 2020-4-13 12:43:57

Python 字符串内置方法:replace

Python 字符串内置方法:replace

    def FforR(self, target, str2): # 给Replace使用的Find
      length = len(target)
      i, j = 0,length
      for k in range(len(str2)+1):
            if str2 == target:
                return i, j
            if j >= length:
                i += 1
            j += 1
      return -1

    def Replace(self, value, target, c):
      temp = self.str1[:] # 不改动self.str1
      for i in range(c):
            pos = self.FforR(value, temp)
            if pos == -1:
                break
            temp = temp[:pos] + target + temp:] # 把找到的字符串作为分割线,分开字符串,然后和target拼接
      return temp

我之前发过一篇关于这个的帖子,直接复制那篇帖子的代码,然后运行

说下思路:

那个FforR其实原来就是Find里面的,后来感觉Find特别臃肿,

便把它孤立了出来。

然后就是replace了,你如果仔细看FforR的代码的话,会发现

其实返回的是i和j,Python默认打包成了元组

所以这里只需要索引pos和pos就好了。

Hello. 发表于 2020-4-13 12:50:38

{:10_284:}顶!

乘号 发表于 2020-4-13 12:51:50

顶{:7_146:}

陈尚涵 发表于 2020-4-13 13:23:52

当我没说

qiuyouzhi 发表于 2020-4-13 13:24:08

陈尚涵 发表于 2020-4-13 13:23
当我没说


什么鬼

陈尚涵 发表于 2020-4-13 14:02:47

qiuyouzhi 发表于 2020-4-13 13:24

什么鬼

我就凑凑热闹

永恒的蓝色梦想 发表于 2020-4-13 14:08:57

replace=lambda string,old,new,count=-1:new.join(string.split(old,count))
页: [1]
查看完整版本: Python 字符串内置方法:replace