Variable dans une boucle [Résolu]

Signaler
-
 Mohamed -
Bonjour,
s'il vous plaît expliquez moi comment le programme ici détecte que c'est une letter et affiche la phrase décomposée en lettres une autre chose pourquoi on n'a pas initialisé la variable letter ?

Sentence = "Bonjour tout le monde"

for letter in Sentence:
print(letter)

1 réponse

Messages postés
1111
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
27 juillet 2021
122
Bonjour,

Le programme ne détecte rien du tout

for letter in Sentence:


est une boucle qui parcourt chaque élément de la variable Sentence, (aussi bien les lettres que les espaces) et les affiche un par un avec print()

letter est initialisée dans la boucle, on aurait aussi bien pu écrire:

for s in Sentence:
    print(s)


le nom importe peu
On peut donc dire que letter est de type caractère(déclarée et initialisée) puisque sentence est une chaîne de caractères ?
Messages postés
29984
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
26 juillet 2021
7 139 > Mohamed
Bonjour,

Pour avoir la réponse :

for c in "abc":
   print(c, type(c))


Tu verras que
c
est de type
str
(chaîne de caractère), bien qu'elle ne fasse qu'un caractère. Cela signifie que tu peux en outre appliquer à
c
toutes les méthodes liées à la classe
str
. e.g.
encode
,
endswith
,
isalpha
,
isspace
, etc. (voir ce lien).

En fait le type "caractère" n'existe pas en python. Pour t'en convaincre, tu peux utiliser la fonction
chr
qui convertit un code ascii dans le caractère correspondant

a = chr(78)
print(a) # Affiche N
print(type(a)) # Affiche <class 'str'>


Bonne chance
>
Messages postés
29984
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
26 juillet 2021

Merci