(Aide) TypeError: 'str' object ne peut pas être interprété comme un entier
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
get_odd_palindrome_at('racecar', 3)
File "C:\Users\musar\Documents\University\Courses\Python\Assignment 2\palindromes.py", line 48, in get_odd_palindrome_at
for i in range(string[index:]):
TypeError: 'str' object cannot be interpreted as an integer
Je veux utiliser la valeur de l'indice se réfère, mais comment dois-je faire?
- Que pensez-vous de ce problème? Qu'avez-vous essayé jusqu'à présent? Qu'avez-vous cherché? stackoverflow.com/help/how-to-ask
- poster votre code svp
Vous devez vous connecter pour publier un commentaire.
Il semble à partir de votre erreur que l'index de la variable est une chaîne de caractères, pas un int. Vous pouvez convertir à l'aide de int().
Maintenant, string[indice:] sera également une chaîne de caractères. Si vous devez convertir que trop:
C'est en supposant que la chaîne[indice:] ne contient qu'un nombre. Si ce n'est pas toujours le cas, vous pouvez faire quelque chose comme:
De l'article de Wikipedia sur le langage Python:
Dans ce cas, vous essayez de passer un string à la plage(). Cette fonction attend un certain nombre (un nombre entier positif, comme il est). C'est pourquoi vous avez besoin de convertir votre string en int. Vous pouvez effectivement faire un peu plus de la vérification, en fonction de vos besoins. Python se soucie de types.
HTH,