Enoder commited on
Commit
7a6e335
·
verified ·
1 Parent(s): d2a58f1

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -6
app.py CHANGED
@@ -93,17 +93,33 @@ questions = [
93
  # Fonction pour afficher les questions et vérifier les réponses
94
  score = 0
95
  random.shuffle(questions) # Mélange les questions pour plus de variété
 
 
 
 
 
96
  for q in questions:
97
  st.subheader(q["question"])
98
- answer = st.radio("", q["options"], key=q["question"])
99
- if st.button("Valider", key=f"{q['question']}_btn"):
100
- if answer == q["answer"]:
 
 
 
 
 
 
 
 
 
 
 
101
  st.success("Bonne réponse !")
102
- score += 1
103
  else:
104
  st.error("Mauvaise réponse.")
105
  st.write("Réponse correcte : ", q["answer"])
106
- st.write("---")
 
107
 
108
  # Affichage du score final
109
  st.write("## Votre score : ", score, "/", len(questions))
@@ -114,4 +130,3 @@ elif score > len(questions) / 2:
114
  st.info("Pas mal, mais vous pouvez encore vous améliorer !")
115
  else:
116
  st.warning("Il semble que vous ayez besoin de réviser encore un peu.")
117
-
 
93
  # Fonction pour afficher les questions et vérifier les réponses
94
  score = 0
95
  random.shuffle(questions) # Mélange les questions pour plus de variété
96
+
97
+ # Utilisation d'une session state pour maintenir l'état des réponses
98
+ if 'responses' not in st.session_state:
99
+ st.session_state.responses = {}
100
+
101
  for q in questions:
102
  st.subheader(q["question"])
103
+ if q["question"] not in st.session_state.responses:
104
+ answer = st.radio("", q["options"], key=q["question"])
105
+ if st.button("Valider", key=f"{q['question']}_btn"):
106
+ if answer == q["answer"]:
107
+ st.session_state.responses[q["question"]] = "correct"
108
+ score += 1
109
+ st.success("Bonne réponse !")
110
+ else:
111
+ st.session_state.responses[q["question"]] = "incorrect"
112
+ st.error("Mauvaise réponse.")
113
+ st.write("Réponse correcte : ", q["answer"])
114
+ else:
115
+ # Afficher les réponses précédentes
116
+ if st.session_state.responses[q["question"]] == "correct":
117
  st.success("Bonne réponse !")
 
118
  else:
119
  st.error("Mauvaise réponse.")
120
  st.write("Réponse correcte : ", q["answer"])
121
+
122
+ st.write("---")
123
 
124
  # Affichage du score final
125
  st.write("## Votre score : ", score, "/", len(questions))
 
130
  st.info("Pas mal, mais vous pouvez encore vous améliorer !")
131
  else:
132
  st.warning("Il semble que vous ayez besoin de réviser encore un peu.")