Fonction identifier si un élément est déja dans une liste
Résolu
Soulplayer
Messages postés
10
Statut
Membre
-
Soulplayer Messages postés 10 Statut Membre -
Soulplayer Messages postés 10 Statut Membre -
Bonjour,
je ne comprend pas pourquoi cela ne marche pas . quand j'esssaye :
a= [1, 3, 6]
b = 4
def test(x,lst):
for i in lst:
if x == lst[i]:
return True
else:
return False
print(test(b,a))
dans un fichier a part cela marche cepandant dans mon code cela ne marche pas:
#f5 to run
import time
from random import *
#def testsi choix est déja dans la liste
def test(x,lst):
for i in lst:
if x == lst[i]:
return True
else:
return False
#intro
print("Bienvenue au loto python !")
print("Vous allez choisir 4 nombres entre 1 et 50\
et un nombre chance entre 1 et 10:")
#demande réponse joueur
a = [51]
choix = 0
i = 1
while i < 5:
print("choix n°", str(i), ":")
choix = input()
if choix > str(0) and choix < str(51):
if test(choix,a) == True:
print("Ce nombre est déja séléctionné...")
elif test(choix,a) == None:
print("1st")
else:
a.append(choix)
i += 1
else:
print("Entrer un nombre entre 1 et 50: ")
print(a)
Merci de votre réponse.
je ne comprend pas pourquoi cela ne marche pas . quand j'esssaye :
a= [1, 3, 6]
b = 4
def test(x,lst):
for i in lst:
if x == lst[i]:
return True
else:
return False
print(test(b,a))
dans un fichier a part cela marche cepandant dans mon code cela ne marche pas:
#f5 to run
import time
from random import *
#def testsi choix est déja dans la liste
def test(x,lst):
for i in lst:
if x == lst[i]:
return True
else:
return False
#intro
print("Bienvenue au loto python !")
print("Vous allez choisir 4 nombres entre 1 et 50\
et un nombre chance entre 1 et 10:")
#demande réponse joueur
a = [51]
choix = 0
i = 1
while i < 5:
print("choix n°", str(i), ":")
choix = input()
if choix > str(0) and choix < str(51):
if test(choix,a) == True:
print("Ce nombre est déja séléctionné...")
elif test(choix,a) == None:
print("1st")
else:
a.append(choix)
i += 1
else:
print("Entrer un nombre entre 1 et 50: ")
print(a)
Merci de votre réponse.
4 réponses
-
Bonjour
En Python, l’indentation est primordiale, or par défaut le site ne la conserve pas.
Pour la conserver il faut utiliser les balises de code. Voir ce petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
On pourra commencer à essayer de t’aider quand tu auras reposté correctement ton code.
-
d'accord mais avec des recherche j'ai trouver la fonction "in" plus pratique que mon code, merci pour votre aide.
-
Alors oui in est bien plus pratique.
Cela dit, le but de ton exercice était peut-être de coder ça toi-même dans un premier temps.
-
(et pour tester si l'input est un int ou str j'ai mis int(input) et utiliser try et except )