Constantes natives

Un petit nombre de constantes existent dans le namespace natif. Elles sont :

False

La valeur fausse du type bool. Les assignations à False ne sont pas autorisées et lèvent une SyntaxError.

True

La valeur vraie du type bool. Les assignations à True ne sont pas autorisées et lèvent une SyntaxError.

None

None est l'unique valeur du type NoneType. Elle est utilisée fréquemment pour représenter l'absence de valeur, comme lorsque des arguments par défaut ne sont pas passés à une fonction. Les assignations à None ne sont pas autorisées et lèvent une SyntaxError.

NotImplemented

Special value which should be returned by the binary special methods (e.g. __eq__(), __lt__(), __add__(), __rsub__(), etc.) to indicate that the operation is not implemented with respect to the other type; may be returned by the in-place binary special methods (e.g. __imul__(), __iand__(), etc.) for the same purpose. It should not be evaluated in a boolean context.

Note

Lorsqu'une méthode à deux opérandes renvoie NotImplemented, l'interpréteur essaye d'exécuter l'opération réfléchie sur l'autre type (il existe d'autres mécanismes de fallback, en fonction de l'opérateur). Si toutes les tentatives renvoient NotImplemented, l'interpréteur lève une exception appropriée. Renvoyer NotImplemented à tort donne lieu à un message d'erreur peu clair ou au renvoi de la valeur NotImplemented pour le code Python.

Voir Implémentation des opérations arithmétiques pour des exemples.

Note

NotImplementedError et NotImplemented ne sont pas interchangeables, même s'ils ont un nom et un objectif similaire. Voir NotImplementedError pour savoir quand l'utiliser.

Modifié dans la version 3.9: évaluer NotImplemented dans un contexte booléen est obsolète. Python l'évalue aujourd'hui à True mais émet un DeprecationWarning. Il lèvera une TypeError dans une version ultérieure de Python.

Ellipsis

Identique au littéral points de suspension ("..."). Valeur spéciale utilisée principalement de manière conjointe avec la syntaxe de découpage (slicing) étendu pour les conteneurs personnalisés.

__debug__

Cette constante est vraie si Python n'a pas été démarré avec une option -O. Voir aussi l'expression assert.

Note

Les noms None, False, True et __debug__ ne peuvent pas être réassignés (des assignations à ces noms, ou aux noms de leurs attributs, lèvent une SyntaxError), donc ils peuvent être considérés comme des "vraies" constantes.

Constantes ajoutées par le module site

Le module site (qui est importé automatiquement au démarrage, sauf si l'option de ligne de commande -S est donnée ajoute un certain nombre de constantes au namespace natif. Elles sont utiles pour l'interpréteur interactif et ne devraient pas être utilisées par des programmes.

quit(code=None)
exit(code=None)

Objets qui, lorsqu'ils sont représentés, affichent un message comme "Use quit() or Ctrl-D (i.e. EOF) to exit", et lorsqu'ils sont appelés, lèvent un SystemExit avec le code de retour spécifié.

credits

Objets qui, lorsqu'ils sont affichés ou appelés, affichent le copyright ou les crédits, respectivement.

license

Objet qui, lorsqu'il est affiché, affiche un message comme "Type license() to see the full license text", et lorsqu'il est appelé, affiche le texte complet de la licence dans un style paginé (un écran à la fois).