Jump to content

Signification message d'erreur index error


mitochondrie31
Go to solution Solved by Sans-Visage,

Recommended Posts

Bonjour !

 

Je me demandais si quelqu'un pouvait m'éclairer sur la signification du message d'erreur Index Error : string index out of range on line 15... J'ai modifié plusieurs fois mon programme mais il me dit toujours la même chose à cette ligne... 😅

 

Merci d'avance !! 💙

Link to comment
Share on other sites

il y a 22 minutes, DuTACKauTac a dit :

tu peux envoyer ton programme stp ?

Désolé, j'ai oublié ! 😅

Le voici (j'ai mis en gras le passage sur lequel il beugue systématiquement.)

 

from printer import *

for loop in range(10):
    mot=input()
    inverse=""
    moitie=len(mot)//2
    for i in range(len(mot)):
        inverse = mot[i] + inverse
    if mot!=inverse:
        for i in range(moitie):
            lettreune=mot[i]
            lettredeux=mot[len(mot)-i]

            liste=[""]*len(mot)
            for n in range(len(mot)):
                liste[n]=mot[n]
            liste[i]=lettreune
            motmodifie=""
            for n in range(len(mot)):
                motmodifie+=liste[n]
            for n in range(len(mot)):
                invmotmodif = motmodifie[n] + invmotmodif
            if motmodifie==invmotmodif:
                print(mot)

 

(Après, c'est le 4 étoiles de l'exercice palindrome de la semaine 5 donc c'est peut-être pas très très grave si j'arrive pas à le faire fonctionner)

Link to comment
Share on other sites

  • Ancien du Bureau
  • Solution
il y a 3 minutes, mitochondrie31 a dit :

lettredeux=mot[len(mot)-i]

Ah ouais alors ça typiquement je galère dessus H24 mdrrrr

 

Il me semble que le message d'erreur veut dire que "la valeur demandée n'existe pas" (genre t'as une liste de 0 à 13 et tu demandes la 15eme valeur)

 

Je t'avoue que je comprends pas pourquoi, je vois aucune raison que la longueur du mot soit inférieure à la moitié de la longueur du mot... mdrrr

Si t'es motivé tu peux essayer de regarder ce que ça donne étape par étape pour voir ce qui ce passe (genre est-ce que ça bloque direct, est-ce que ça bloque après quelques passages... et comme ça en plus t'as les variables qui s'affichent donc tu devrais pouvoir voir d'où vient le problème 🤞🏼)

 

Désolé de pas pouvoir t'aider plus que ça mdrrr

Link to comment
Share on other sites

il y a 17 minutes, DuTACKauTac a dit :

Si t'es motivée tu peux essayer de regarder ce que ça donne étape par étape pour voir ce qui ce passe (genre est-ce que ça bloque direct, est-ce que ça bloque après quelques passages... et comme ça en plus t'as les variables qui s'affichent donc tu devrais pouvoir voir d'où vient le problème 🤞🏼)

Je pense que je vais essayer de faire ça...

 

il y a 19 minutes, DuTACKauTac a dit :

Désolé de pas pouvoir t'aider plus que ça mdrrr

T'inquiètes, à ce stade-là, je suis même plus sûre de comprendre mes propres programmes... 😅

 

Merci pour ta réponse !

Link to comment
Share on other sites

  • Ancien du Bureau
il y a 7 minutes, mitochondrie31 a dit :

Je pense que je vais essayer de faire ça...

 

Je croise les doigts ^^

 

il y a 8 minutes, mitochondrie31 a dit :

T'inquiètes, à ce stade-là, je suis même plus sûre de comprendre mes propres programmes... 😅

Ils commencent à partir loin les profs d'info mdrrrr

 

Avec plaisir <333

Link to comment
Share on other sites

Il y a 19 heures, DuTACKauTac a dit :

Je croise les doigts ^^

C'est bon, j'ai trouvé ! En fait, il fallait juste que je mette lettredeux=mot[len(mot)-i-1], parce que pour un mot de 4 lettres par exemple, l'indice de la dernière lettre est "3", pas 4...

 

Merci beaucoup !!

Link to comment
Share on other sites

  • Ancien du Bureau
il y a 16 minutes, mitochondrie31 a dit :

En fait, il fallait juste que je mette lettredeux=mot[len(mot)-i-1], parce que pour un mot de 4 lettres par exemple, l'indice de la dernière lettre est "3", pas 4...

OOOOOH ! Bien joué !! 

 

Me remercie pas hein, c'est toi qui as trouvé :'))

Merci de me l'avoir dit par contre!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...