IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

"local variable referenced before assignment"


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 3
    Par défaut "local variable referenced before assignment"
    Bonjour ! Je travaillais sur un programme censé déterminer si les coordonnées entrés par un utilisateur étaient juste (sur une grille 5x5 donc A3 l'est, F6 non par exemple). mon programme semblait très bien marcher, néanmoins j'ai cette erreur (local variable referenced before assignment" qui apparaît pour certaines séquences de nombres. Voici le programme :
    Nom : Screenshot 2019-02-10 at 22.23.19.png
Affichages : 1599
Taille : 177,0 Ko

    D'abord l'utilisateur choisit une grille (1 2 ou 3) puis entre des coordonnées (A2, A4 etc...) puis le programme lui dit si ces coordonnées appartiennent à la grille de jeu ou non.
    Or en faisant A au premier input (soit une erreur de grille donc le programme lui redemande de choisir une grille parmi les grilles 1, 2 ou 3).
    Ensuite je fais 3 (donc le programme va vers la troisième grille et me demande donc des coordonnées), puis 2 et 3 (ce qui correspond à des coordonnées 23 donc impossible : le programme est censé me redemander des coordonnées donc) et là j'ai cette fameuse erreur sur la variable grille qui est donc une "local variable referenced before assignment".

    Je n'ai pas cette erreur en tapant 3,2,3 (3ème grille puis 23) ou même 2,2,2, et le programme semble bien marcher sinon (même si j'enchaine les saisies improbables)
    Est ce que vous auriez une idée d'où vient le problème ?

    Merci d'avance !

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 738
    Par défaut
    Salut,

    Citation Envoyé par LithiumAsWell Voir le message
    mon programme semblait très bien marcher, néanmoins j'ai cette erreur (local variable referenced before assignment" qui apparaît pour certaines séquences de nombres.
    Avec Python, une variable n'existe qu'après l'assignation d'un objet.
    Si j'écris:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> def f(n):
    ...     if n == 1:
    ...        a = 0
    ...     print(a)
    ...
    La variable a sera définie si la condition n == 1 est vraie.
    Dans le cas contraire, vous aurez le même message d'erreur.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/12/2015, 17h46
  2. local variable 'z' referenced before assignment
    Par djidji22 dans le forum Tkinter
    Réponses: 1
    Dernier message: 08/06/2012, 11h50
  3. Aide sur erreur variable referenced before assignment
    Par steph70 dans le forum Tkinter
    Réponses: 8
    Dernier message: 15/10/2009, 08h16
  4. Réponses: 6
    Dernier message: 10/08/2008, 16h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo