Question problème python déplacement
Bonjour,
Je suis débutant et je cherche à écrire un programme où lorsque je demande un mot
Sauf que dans mon code ça m'affiche
Merci de votre aide ;-)
Je suis débutant et je cherche à écrire un programme où lorsque je demande un mot
wordet que l'on me répond par exemple
"sept", je prends la première lettre de
"sept"et j'ajoute
"ay"ce qui fait
"eptsay".
Sauf que dans mon code ça m'affiche
"septsay". Le problème et que la lettre est dupliqué au lieu d'être déplacer comment je peux faire pour la déplacer.
suite = 'ay'
original = raw_input('Enter a word:')
if len(original) > 0 and original.isalpha():
word = original.lower()
letter = word[0]
new_word = word + letter + suite
print new_word
else:
print 'Ce n'est pas un mot'
Merci de votre aide ;-)
3 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
moi, au lieu de déplacer la lettre, je la retirerais du début du mot. -
Bonjour,
Le mot étant un tableau de caractères, il peut être découpé, voir : https://www.digitalocean.com/community/tutorials/how-to-index-and-slice-strings-in-python-3-fr
word[1:]
te donnes le mot à partir du second caractère
-
Bonjour,
Pour compléter les réponses qui ont déjà été données, il faut bien comprendre que :
letter = word[0]
... ne fait que copier le premier caractère deword
dansletter
. Donc suite à cette opération,word
contient toujours"sept"
.
La solution de jee pee te permet d'extraire le suffixe à partir du caractère 1 inclu (sachant qu'ils sont indexés à partir de 0) et donc de récupérer le contenu deword
sans le premier caractère.
suffix = word[1:] print(suffix)
Attention aussi, si tu entoures ta chaînes avec des apostrophe, il faut échapper l'apostrophe, où utiliser des guillemets. Par ailleurs à partir de python 3,print
est une fonction donc il faut mettre les parenthèses :
print("Ce n'est pas un mot") print('Ce n\'est pas un mot')
Bonne chance