If a name binding operation occurs anywhere within a code block, all uses of the name within the block are treated as references to the current block. This can lead to errors when a name is used within a block before it is bound. This rule is subtle.
en gros on rentre dans le scope de la classe. Ce scope introduit une variable locale x et donc toute référence à x dans ce scope se fera en référançant la variable locale. Or lors de l'évaluation de la partie droite de l'assignation, x n'est pas encore assigné, bam NameError.
# Le moi d'après répond au moi d'avant
Posté par serge_sans_paille (site web personnel) . En réponse au journal Quizz Python : esp[èa]ce de nom. Évalué à 10.
D'après https://docs.python.org/3/reference/executionmodel.html#resolution-of-names :
en gros on rentre dans le scope de la classe. Ce scope introduit une variable locale
xet donc toute référence àxdans ce scope se fera en référançant la variable locale. Or lors de l'évaluation de la partie droite de l'assignation,xn'est pas encore assigné, bamNameError.