查找并替换字符串中的char位置

时间:2016-03-26 06:23:08

标签: python python-3.x

我正在尝试替换字符串中的char位置但到目前为止没有成功。例如,对于

string = 'LOLOLOLO$$'
replace(string,1) 

我想要的结果是

'L$$OLOLOOL'

我现有的代码:

def replace(string, position):
    p = int(position)
    s = []    
    for i,c in enumerate(string):
        s.append(c)
        if c == '$':
            s.insert(p,c)

    return ''.join(s)

2 个答案:

答案 0 :(得分:1)

您仍在新字符串末尾附加$个符号。试试这个:

...
if c == '$':
    s.insert(p,c)
else:
    s.append(c)

答案 1 :(得分:1)

如果我的问题正确,您想要插入' $$'在位置1并删除旧的事件:

def replace(src, newpos, what="$$"):
    src=src.replace(what, "")   #removes ALL occurences of what
    return src[:newpos]+what+src[newpos:]

这会给你结果:

s="LOLOLO$$"
result=replace(s, 1)
print(result) #result is "L$$OLOLO"