获取重复字符串index和字符串修改 解决 TypeError: 'str' object does not support item assignment python

问题

python中如果通过list索引直接修改字符串的值会直接报错:

代码如下:

import copy
text = "重庆重庆市重庆重庆市用户王敖齐"
text_copy = copy.deepcopy(text)
st_list = []
for i, v in enumerate(locat_list):
    durn = len(v)
    st_post = text_copy.index(v)
    same =  "*" * durn

    text_copy[st_post:durn] = same  # 修改第一次找到的值

    st_list.append(st_post)    

解决

通过字符串重新拼接

代码如下:

import copy
text = "重庆重庆市重庆重庆市用户王敖齐"
text_copy = copy.deepcopy(text)
st_list = []
for i, v in enumerate(locat_list):
    durn = len(v)
    st_post = text_copy.index(v)
    same =  "*" * durn

    text_copy = text_copy[0:st_post] + same + text_copy[st_post+durn:]

    

    st_list.append(st_post)

即可正常获取和修改。

posted @ 2022-07-19 08:59  谦曰盛  阅读(88)  评论(0编辑  收藏  举报