Python, detecter les lettre dans une liste [Résolu/Fermé]

Signaler
Messages postés
979
Date d'inscription
mardi 15 janvier 2008
Statut
Membre
Dernière intervention
23 octobre 2011
-
 Loupix -
Bonjour,

Je debute en Python et j'aimerais connaitre une methode pour detecter si une liste contient des lettres.

Par exemple, si j'ai:
num=[1, 2, 3, 4, a]

je veux que Python detecte ce "a" et me retourne un message d'erreur.
J'ai essaye num.isdigit() mais ca n'a pas l'air de marcher...

merci de votre aide!


4 réponses

Une simple boucle for mon pote
for lettre in num:
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

c'est normal que ça ne fonctionne pas car tu ne peux pas donner une liste comme attribut à cette fonction mais un string.

Comme indiqué par charly, mets ta fonction dans une boucle:

for element in num:
    if str(element).isdigit() == False:
         print 'message d'erreur'

num=[1, 2, 3, 4, a]

Ton a est une variable, normal que cela ne fonctionne pas si elle n'est pas déclarée.

Je pense que tu aurais dû mettre num=[1, 2, 3, 4, "a"] où ton a est un string.

for i in num:
    if isinstance(i, int): print "good"
    else: print "erreur"
on peut utiliser simplement

if "a" in num : print "ok"
else: print "non ok"
Messages postés
979
Date d'inscription
mardi 15 janvier 2008
Statut
Membre
Dernière intervention
23 octobre 2011
213
oui merci a tous, c'etait une simple erreur de ma part... isdigit ne pouvait pas marcher dans ce cas ^^