通过位置列表将字符串中的字符替换为另一个字符

时间:2017-10-28 17:05:08

标签: python string

如何将字符串中的某些字符替换为不同位置的其他字符? 例如,我有字符串:string="********u",列表:list=[0,2,4]character = 'a'。如何将string[0]string[2]string[4]替换为a

3 个答案:

答案 0 :(得分:9)

你可以试试这个:

s = "********u"
l ={0,2,4}
final_string = ''.join(["a" if i in l else a for i, a in enumerate(s)])

输出:

'a*a*a***u'

答案 1 :(得分:2)

只需使用一个函数并将参数作为索引,字符串和替换字符传递:

def replace(index_list,character,string):
    string=list(string)

    for index in index_list:
        string[index]=character
    return "".join(string)
print(replace([0,2,4],'a',"********u"))

输出:

a*a*a***u

答案 2 :(得分:0)

另一种方式:

your_string = list("********u")
your_list = [0,2,4]

for index_number in your_list:
    your_string[index_number] = 'a'

your_output = ''.join(your_string)
print(your_output)