|
Original |
Translation |
|
47
|
After local assignment: test spam After nonlocal assignment: nonlocal spam After global assignment: nonlocal spam In global scope: global spam
|
After local assignment: test spam After nonlocal assignment: nonlocal spam After global assignment: nonlocal spam In global scope: global spam
|
|
48
|
Note how the *local* assignment (which is default) didn't change *scope_test*\'s binding of *spam*. The :keyword:`nonlocal` assignment changed *scope_test*\'s binding of *spam*, and the :keyword:`global` assignment changed the module-level binding.
|
Vous pouvez constater que l'affectation *locale* (qui est effectuée par défaut) n'a pas modifié la liaison de *spam* dans *scope_test*. L'affectation :keyword:`nonlocal` a changé la liaison de *spam* dans *scope_test* et l'affectation :keyword:`global` a changé la liaison au niveau du module.
|
|
49
|
You can also see that there was no previous binding for *spam* before the :keyword:`global` assignment.
|
Vous pouvez également voir qu'aucune liaison pour *spam* n'a été faite avant l'affectation :keyword:`global`.
|
|
50
|
|
Une première approche des classes
|
|
51
|
|
52
|
|
Syntaxe de définition des classes
|
|
53
|
The simplest form of class definition looks like this::
|
La forme la plus simple de définition de classe ressemble à ceci ::
|
|
54
|
class ClassName: <statement-1> . . . <statement-N>
|
class NomDeLaClasse: <déclaration-1>. . . <déclaration-N>
|
|
55
|
Class definitions, like function definitions (:keyword:`def` statements) must be executed before they have any effect. (You could conceivably place a class definition in a branch of an :keyword:`if` statement, or inside a function.)
|
Les définitions de classes, comme les définitions de fonctions (définitions :keyword:`def`) doivent être exécutées avant d'avoir un effet. (Vous pouvez tout à fait placer une définition de classe dans une branche d'une instruction conditionnelle :keyword:`if` ou encore à l'intérieur d'une fonction.)
|
|
56
|
In practice, the statements inside a class definition will usually be function definitions, but other statements are allowed, and sometimes useful --- we'll come back to this later. The function definitions inside a class normally have a peculiar form of argument list, dictated by the calling conventions for methods --- again, this is explained later.
|
Dans la pratique, les déclarations dans une définition de classe seront généralement des définitions de fonctions, mais d'autres déclarations sont permises, et parfois utiles --- Nous reviendrons sur ce point plus tard. Les définitions de fonction à l'intérieur d'une classe ont normalement une forme particulière de liste d'arguments, dictée par les conventions d'appel aux méthodes --- Tout ceci sera expliqué plus tard.
|