Bonsoir Le programme ci-dessous affiche que la variable dictionnaire n'est pas défini. def lecture(): dictionnaire = {} fichier=open('qcm.txt') for line in fich
Informatique
anonymmmm
Question
Bonsoir
Le programme ci-dessous affiche que la variable "dictionnaire" n'est pas défini.
def lecture():
dictionnaire = {}
fichier=open('qcm.txt')
for line in fichier:
key, value= line.split(';;')
dictionnaire[key]=value
fichier.close
Je n'arrive pas a comprendre pourquoi. Pouvez-vous m'aider s'il vous plait?
Le programme ci-dessous affiche que la variable "dictionnaire" n'est pas défini.
def lecture():
dictionnaire = {}
fichier=open('qcm.txt')
for line in fichier:
key, value= line.split(';;')
dictionnaire[key]=value
fichier.close
Je n'arrive pas a comprendre pourquoi. Pouvez-vous m'aider s'il vous plait?
1 Réponse
-
1. Réponse Thomas756
Bonsoir,
Ton dictionnaire n'existe qu'au sein de la fonction lecture().
On parle de variables locales (opposées à globales); c'est la portée des variables.
Tu as deux possibilités pour utiliser ton dictionnaire en dehors de la fonction.
La première c'est de faire ton dictionnaire = {} en dehors de la fonction, donc en globale.
La deuxième (mieux) c'est de retourner le dictionnaire à la fin de la fonction:
def lecture():
dictionnaire = {}
fichier=open('qcm.txt')
for line in fichier:
key, value= line.split(';;')
dictionnaire[key] = value
fichier.close
return dictionnaire
dico = lecture()
Bonnes fêtes.