为entertext.insert()使用字符串

2024-10-02 02:43:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试让字符串中的每个字符都发生一些事情。这目前是可行的,但我想在每次循环时将entertext更改1。然而,我不断得到错误:

AttributeError: 'str' object has no attribute 'insert'

任何帮助都将不胜感激,因为我找不到任何方法来修复它,谢谢

    num = str(0)
    for char in string.ascii_uppercase:
        charPerc=round(100*float(var1[char])/float(totalCount),3)
        strChar = str(charPerc)
        test = 'entertext' + num
        test.insert(END, char +' = ' + strChar + '%') 
        z+1

我需要更改它,因为我希望变量charPerc(它给出了字符在整个字符串中的百分比)更改为每个字符的下一个输入框

编辑:很抱歉,我没有说清楚,我不是想插入字符串,而是想插入一个输入文本框。我只是每次尝试更改entertext框的名称,而不是编辑字符串


Tags: 字符串test编辑错误float字符事情num
2条回答

正如错误所说,str对象没有属性insert。属性insert用于列表等可变对象,但由于字符串是不可变的,因此不能对它们使用它

如果要在字符串末尾插入子字符串,只需使用+操作数即可

test+=char +' = ' + strChar + '%'

如果要在字符串中插入字符串,可以使用切片:

例如:

>>> s='example'
>>> index=3
>>> s[:3]+'***'+s[3:]
'exa***mple'

找到要插入项的索引,然后创建新字符串

index = 2 
newString = oldString[:index] + item+oldString[index:]

相关问题 更多 >

    热门问题