Maison >développement back-end >Tutoriel Python >Pourquoi « c = 1 » provoque-t-il une « UnboundLocalError » dans les fonctions Python ?
UnboundLocalError : portée de variable dans les fonctions avec affectations
UnboundLocalError se produit lorsqu'une variable est utilisée dans une fonction sans être correctement définie ou importée. Comprendre le concept de portée est crucial pour résoudre ce problème.
Python fait la distinction entre les variables locales et globales au sein des fonctions. Lorsqu’une variable reçoit une valeur dans une fonction, elle devient une variable locale. Cette variable locale est prioritaire sur toute variable globale du même nom.
Dans l'exemple fourni, lorsque c = 1 est exécuté, une variable locale c est créée. Cette variable locale remplace la variable globale c par la valeur 3. Cependant, l'instruction print(c) tente d'accéder au c global, qui n'est pas défini à ce stade, provoquant l'erreur UnboundLocalError.
Pour remédier à ce problème , Python propose deux options :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!