修改代码更具体?

时间:2013-03-23 01:23:09

标签: python

我的代码删除字符串中的连续重复项。我现在想要做的只是删除特定的重复项。示例..

my_func("killkiss","l")
'kilkiss'
my_func("killkiss","s")
'killkis'

我的代码

def my_func(input,sub):
newString = ""
for char in input:
    if newString == "" or char != newString[len(newString)-1]: #I've tried adding 'and is sub'
        newString += char    
return newString

有没有办法修改我的代码?我需要练习所以没有来自字符串库或导入的内置函数。

2 个答案:

答案 0 :(得分:2)

对于连续重复项,您可以使用replace字符串方法:

def my_func(input, sub):
    result = input.replace(sub*2, sub)
    if result == input:
        return result
    return my_func(result, sub)

答案 1 :(得分:1)

我认为你在寻找:

if newString == "" or char != newString[len(newString)-1] or char != sub: