Liste de course avec match
Bonjour j'ai trouvé une solution avec match:
import sys
liste_course = ["banane","madere","pomme","sextoy","brosse"]
while True:
user_input = input("""1.Ajouter un élément à la liste de courses
2.Retirer un élément de la liste de courses
3.Afficher les éléments de la liste de courses
4.Vider la liste de courses
5.Quitter le programme
Tapez votre choix : """)
match user_input:
case "1":
user_inputb = input("quel élément souhaitez vous ajouter? : ").lower()
liste_course.append(user_inputb)
print(liste_course)
case "2":
user_inputb = input("quel élément souhaitez vous enlever? : ").lower()
if user_inputb in liste_course:
liste_course.remove(user_inputb)
print(liste_course)
else:
print("désolé mais ce mot n'est pas ds liste!!")
case "3":
print(liste_course)
case "4":
liste_course.clear()
print(liste_course)
case "5":
sys.exit()
case _:
print("il semble que vous n'ayez pas tapez le bon chiffre.Merci de choisir un nombre valide entre 1 et 5")
1.J'aimerais avoir un avis sur ce code.Existe t-il un moyen de le rendre moins lourd? 2. Lorsque je fait le test avec les touche 1 à 5 ça marche, mais lorsque je tape une touche comme "b" ou "c" ou "6" je n'ai pas mon message "il semble que...".Je ne comprends pas pourquoi.
Salut !
Pas grand chose à dire sur ton code, c'est bien !
Deux petites corrections si vraiment je veux trouver quelque chose à dire : niveau convention, mets un espace après les virgules dans ta liste, et tu peux aussi dans une chaîne de caractères multiligne mettre les éléments sans tabulation pour qu'ils s'affichent correctement :
import sys
liste_course = ["banane", "madere", "pomme", "sextoy", "brosse"]
while True:
user_input = input("""1.Ajouter un élément à la liste de courses
2.Retirer un élément de la liste de courses
3.Afficher les éléments de la liste de courses
4.Vider la liste de courses
5.Quitter le programme
Tapez votre choix : """)
match user_input:
case "1":
user_inputb = input("quel élément souhaitez vous ajouter? : ").lower()
liste_course.append(user_inputb)
print(liste_course)
case "2":
user_inputb = input("quel élément souhaitez vous enlever? : ").lower()
if user_inputb in liste_course:
liste_course.remove(user_inputb)
print(liste_course)
else:
print("désolé mais ce mot n'est pas ds liste!!")
case "3":
print(liste_course)
case "4":
liste_course.clear()
print(liste_course)
case "5":
sys.exit()
case _:
print("il semble que vous n'ayez pas tapez le bon chiffre.Merci de choisir un nombre valide entre 1 et 5")
Pour le case _ ça fonctionne bien chez moi, tu utilises bien Python >3.10 ?

Inscris-toi
(c'est gratuit !)
Tu dois créer un compte pour participer aux discussions.
Créer un compte