A voir également:
- Qcm python
- Citizen code python avis - Accueil - Outils
- Python est introuvable. exúcutez sans argument pour procúder ó l - Forum Python
- Python pix ✓ - Forum Python
- Mot secret python pix ✓ - Forum Python
- Programme python ✓ - Forum Python
1 réponse
Il faut factoriser un peu tout ça, tu répètes 5 fois la même chose dans ton code.
Ton code n'est pas très cohérent :
while q1==[1,2,3]
elif q1==[1,2]
Cela ne peut fonctionner.
Un exemple rapide, et surtout plus concis et lisible de ce que cela peut donner.
L'avantage est déjà que tu peux ajouter des question simplement en ajoutant des items dans la liste qcm.
La liste contient des dictionnaires, avec pour items, la question, la liste des choix de réponses (tuple), et la bonne réponse correspondant à l'index de la liste des réponses.
Ton code n'est pas très cohérent :
while q1==[1,2,3]
elif q1==[1,2]
Cela ne peut fonctionner.
Un exemple rapide, et surtout plus concis et lisible de ce que cela peut donner.
#!/usr/bin/env python # -*- coding: utf-8 -*- from __future__ import print_function qcm = [ {'question':"Que donne l'équation suivante: 9/3*9", 'choix':(3, 6, 9), 'reponse':0}, {'question':"L'une de ces quatre propositions ne désigne pas un organe, laquelle", 'choix':("L'épiderme", "Le coeur", "La rate"), 'reponse':0}, {'question':"Quelle est la vitesse de la lumière", 'choix':("299 792 458 km⋅s", "299 792 458 m⋅s", "299 792 458 000 m⋅s"), 'reponse':2}, {'question':"Quelle est le nom de l'ion positif", 'choix':("Neutron", "Proton", "Électron"), 'reponse':2}, {'question':"Si nous tapons sur python 14%2, quel résultat va nous donner python", 'choix':("2", "7", "0"), 'reponse':2}, ] print("Bonjour! Pour valider les cinq sciences, voici 5 questions; l'une en mathématique, en biologie, en physique, en chimie et en informatique\n") nom = raw_input("Bonjour! Veuillez écrire votre nom : ") print("Prêt", nom, "? Alors commencons !\n") score = 0 for item in qcm : print(item['question'], '?') i = 1 for choix in item['choix'] : print(i, '-', choix) i += 1 reponse = raw_input("Votre réponse : ") if int(reponse) == item['reponse'] + 1 : print("Bravo, c'était bien la bonne réponse") score += 1 else: print("La bonne réponse était la numéro", item['reponse'] + 1) print("\n") print("Votre résultat est de", score, "/", len(qcm)) print("Au revoir", nom)
L'avantage est déjà que tu peux ajouter des question simplement en ajoutant des items dans la liste qcm.
La liste contient des dictionnaires, avec pour items, la question, la liste des choix de réponses (tuple), et la bonne réponse correspondant à l'index de la liste des réponses.
Etidal23
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
Merci beaucoup jopkim tu m'as vraiment beaucoup aidé! =)