Parfait. +1.
Maintenant, voyons comment appliquer cette ligne de code dans ta boucle de sauvegarde fichier :
Comment devrait-on réécrire cette portion de code ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #création d'un fichier pour enregister la liste sur l'ordinateur fichier=open("QCM.txt","w") for i in range (0,len(list())): fichier.write(("Enoncé: " + liste_questions[i].enonce + "\n Rep1: " + liste_questions[i].rep1 + "\n Rep2: " + liste_questions[i].rep2 +"\n Rep3: " + liste_questions[i ].rep3 +"\n Rep Juste: " + str(liste_questions[i]. repjuste) + "\n Justification: " + liste_questions[i]. justy)) fichier.close()
OUI, il y a de ça dans l'idée.
Est-ce que tu penses qu'on pourrait utiliser
à la place de
Code : Sélectionner tout - Visualiser dans une fenêtre à part for question in liste_questions:pour que ce soit plus parlant dans le code ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part for element in liste_questions:
EXACT
On donne bien le nom de variable que l'on veut à la variable qui parcourera les éléments de liste_questions.
Que ce soit question, element ou même tartempion, peu importe, le résultat sera le même pourvu que l'on cite le bon nom de variable à l'intérieur de la boucle, il s'entend.
Donc maintenant, ton code ressemble à ça :
Est-ce que tu penses que ça y est, c'est tout bon ou est-ce que tu penses qu'il y a encore des choses à modifier dans cette portion de code ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #création d'un fichier pour enregister la liste sur l'ordinateur fichier=open("QCM.txt","w") for question in liste_questions: fichier.write(("Enoncé: " + liste_questions[i].enonce + "\n Rep1: " + liste_questions[i].rep1 + "\n Rep2: " + liste_questions[i].rep2 +"\n Rep3: " + liste_questions[i ].rep3 +"\n Rep Juste: " + str(liste_questions[i]. repjuste) + "\n Justification: " + liste_questions[i]. justy)) fichier.close()
Par le code déjà existant, par exemple.
C'est pas un bon début, ça ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #création d'un fichier pour enregister la liste sur l'ordinateur fichier=open("QCM.txt","w") for question in liste_questions: fichier.write(("Enoncé: " + liste_questions[i].enonce + "\n Rep1: " + liste_questions[i].rep1 + "\n Rep2: " + liste_questions[i].rep2 +"\n Rep3: " + liste_questions[i ].rep3 +"\n Rep Juste: " + str(liste_questions[i]. repjuste) + "\n Justification: " + liste_questions[i]. justy)) fichier.close()
N'oublie pas que dans ta boucle for question in liste_questions: c'est ta variable question qui va varier à chaque boucle et non pas liste_questions.
A toi de jouer !
Quand on écrit for ... in ... c'est une boucle.
Par exemple, for question in liste_questions c'est une boucle qui va affecter à la variable question d'abord le premier élément de liste_questions, puis à la boucle suivante le second élément, puis à la boucle suivante le troisième élément et ainsi de suite jusqu'au tout dernier élément de liste_questions, tout simplement.
Une boucle, c'est un mouvement qui part d'un point A, traverse un point B puis revient à son point de départ A.
Une boucle, quoi. Comme les boucles d'oreilles, par exemple.
Non, en clair, tu dois simplement remplacer liste_questions[i] par question dans ton code :
la boucle for question in liste_questions est justement là pour faire le travail à ta place, sinon, quel intérêt aurait un programme s'il ne faisait pas le travail à la place du programmeur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #création d'un fichier pour enregister la liste sur l'ordinateur fichier=open("QCM.txt","w") for question in liste_questions: fichier.write(("Enoncé: " + liste_questions[i].enonce + "\n Rep1: " + liste_questions[i].rep1 + "\n Rep2: " + liste_questions[i].rep2 +"\n Rep3: " + liste_questions[i ].rep3 +"\n Rep Juste: " + str(liste_questions[i]. repjuste) + "\n Justification: " + liste_questions[i]. justy)) fichier.close()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager