Questionnaire choix de réponse (qcm) Python 2.7.9
Fermé
Etidal23
Messages postés
4
Date d'inscription
mardi 18 octobre 2016
Statut
Membre
Dernière intervention
12 novembre 2016
-
Modifié par crapoulou le 18/10/2016 à 11:20
Etidal23 Messages postés 4 Date d'inscription mardi 18 octobre 2016 Statut Membre Dernière intervention 12 novembre 2016 - 19 oct. 2016 à 00:10
Etidal23 Messages postés 4 Date d'inscription mardi 18 octobre 2016 Statut Membre Dernière intervention 12 novembre 2016 - 19 oct. 2016 à 00:10
A voir également:
- Poser une question sur python
- Python est introuvable. exúcutez sans argument pour procúder ó l - Forum Python
- Citizen code python avis - Accueil - Outils
- \R python ✓ - Forum Python
- Célia doit nettoyer le tableau ci-dessous pour l’ajouter à la base de données de son entreprise. les données sont ensuite traitées automatiquement. quelles sont les 4 cellules qui risquent de poser problème ? ✓ - Forum Excel
- Trouver la position d'un élément dans une liste 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.
19 oct. 2016 à 00:10