Variable dans une boucle

Résolu/Fermé
Mohamed - 15 juil. 2021 à 13:38
 Mohamed - 15 juil. 2021 à 19:00
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

Phil_1857 Messages postés 1518 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 26 novembre 2022 151
15 juil. 2021 à 13:55
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
0
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 ?
0
mamiemando Messages postés 31752 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 25 novembre 2022 7 479 > Mohamed
Modifié le 15 juil. 2021 à 18:06
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
0
Mohamed > mamiemando Messages postés 31752 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 25 novembre 2022
15 juil. 2021 à 19:00
Merci
0