为什么我不能将0分配给python字符串列表元素[重复]

问题描述 投票:0回答:1

我正在编写用于计算字符串中重复字符的代码。

def printdups(strng):
    for i in range(0,len(strng)):
        count=1
        for j in range(i+1, len(strng)):
            if(strng[i]==strng[j]) and strng[i]!=' ':
                count+=1
                strng[j]=[:j] +'0'+strng[j+1:]
    if (count>1 and strng[i]!='0'):
        print(strng[i]+" , count =", count)


if __name__ == "__main__":
    strng = "hello hello"
    print (printdups(strng))

但是我在以下[:j]的此部分遇到错误

strng[j]=[:j]+'0'+strng[j+1:]

[当我尝试提供strng[j]=0时,出现以下错误:

TypeError: 'str' object does not support item assignment

我想将strng[j]的值分配为'0'。有没有其他方法可以将strng[j]分配为'0'

python python-3.x syntax
1个回答
0
投票

因为字符串在Python中是不可变的。参见related questionsenderleanswer

© www.soinside.com 2019 - 2024. All rights reserved.