Python, detecter les lettre dans une liste

Résolu
TankilyoraDbug Messages postés 985 Date d'inscription   Statut Membre Dernière intervention   -  
 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!


A voir également:

4 réponses

charly
 
Une simple boucle for mon pote
for lettre in num:
1
6ril
 
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'
0
Utilisateur anonyme
 
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"
0
Loupix
 
on peut utiliser simplement

if "a" in num : print "ok"
else: print "non ok"
0
TankilyoraDbug Messages postés 985 Date d'inscription   Statut Membre Dernière intervention   219
 
oui merci a tous, c'etait une simple erreur de ma part... isdigit ne pouvait pas marcher dans ce cas ^^
0