我的代码上一直有同样的相关错误,只是不知道问题出在哪里。尝试了所有我能在网上找到的,但似乎不起作用。这是一些代码。(我知道它可能没有优化,但这不是我的主要问题)
我也使用Python 3.9.1
def init(): # créer la liste de données
liste = []
liste_lettre = []
for x in range(len(texte)-1):
lettre_init = []
liste_poss = []
if texte[x][0] not in liste_lettre:
liste_lettre.append(texte[x][0])
lettre_init = texte[x][0]
for i in range(len(texte)-1):
for j in range(len(texte[i])):
if texte[i][j] == lettre_init:
if j == len(texte[i]):
liste_poss += (" ")
else:
liste_poss.append(texte[i][j+1])
print(hasattr(liste_poss, "append"))
liste_poss = lettre_init, liste_poss
liste.append(liste_poss)
return liste
好的,解释一下我的代码是关于什么的:
我正在尝试创建一个函数来存储给定文本中字母的连续迭代(
texte
)转换为数组(
liste
).
texte
是一个单词数组
函数检查的每个单词的每个字母
texte
如果信件已经被核实。
如果没有,每次它看到给定的字母(存储在
lettre_init
)总之
texte
,如果这是单词的最后一个字母,它将在列表中添加一个空格(“”)
liste_poss
; 如果不是单词的最后一个字母,它将添加到
liste_poss
单词中的以下字母。
验证后
texte
完全,一个由经过验证的信件组成的列表(
lettre_init
)以及以下所有字母(
liste_poss
)添加到数组中
清单
.
最后,
清单
返回。
我一直有错误
AttributeError: 'tuple' object has no attribute 'append'
对于线路
liste_poss.append(texte[i][j+1])
我验证了
texte
和
liste_poss
具有
hasattr(liste_poss, "append")
然后它回来了
True
我试过了
liste_poss += (texte[i][j+1])
但是错误是
TypeError: can only concatenate tuple (not "str") to tuple
.
这个问题似乎与对象是元组有关,但我就是找不到问题出在哪里?
如果你有什么想法,请帮帮我,我迷路了。