鱼C论坛

 找回密码
 立即注册
查看: 1879|回复: 6

[技术交流] Python 字符串内置方法:replace

[复制链接]
发表于 2020-4-13 12:43:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
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[i:j] == 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[0]] + target + temp[pos[1]:] # 把找到的字符串作为分割线,分开字符串,然后和target拼接
        return temp

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

说下思路:

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

便把它孤立了出来。

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

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

所以这里只需要索引pos[0]和pos[1]就好了。

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
Hello. + 1 + 1 鱼C有你更精彩^_^嘿嘿嘿!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-13 12:50:38 | 显示全部楼层
顶!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-13 12:51:50 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-13 13:23:52 | 显示全部楼层
当我没说
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-13 13:24:08 | 显示全部楼层


什么鬼
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-13 14:02:47 | 显示全部楼层

我就凑凑热闹
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-13 14:08:57 | 显示全部楼层
replace=lambda string,old,new,count=-1:new.join(string.split(old,count))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 10:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表