Inbyggda konstanter

Ett litet antal konstanter finns i den inbyggda namnrymden. De är följande:

False

Det falska värdet av typen bool. Tilldelningar till False är olagliga och ger upphov till ett SyntaxError.

True

Det sanna värdet av typen bool. Tilldelningar till True är olagliga och ger upphov till ett SyntaxError.

None

Ett objekt som ofta används för att representera avsaknaden av ett värde, t.ex. när standardargument inte skickas till en funktion. Tilldelningar till None är olagliga och ger upphov till ett SyntaxError. None är den enda förekomsten av typen NoneType.

NotImplemented

Ett speciellt värde som bör returneras av de binära specialmetoderna (t.ex. __eq__(), __lt__(), __add__(), __rsub__(), etc.) för att ange att operationen inte är implementerad med avseende på den andra typen; kan returneras av de binära specialmetoderna på plats (t.ex. __imul__(), __iand__(), etc.) för samma ändamål. Den bör inte utvärderas i ett booleskt sammanhang. NotImplemented är den enda förekomsten av typen types.NotImplementedType.

Anteckning

När en binär (eller in-place) metod returnerar NotImplemented kommer tolken att försöka med den reflekterade operationen på den andra typen (eller någon annan fallback, beroende på operator). Om alla försök returnerar NotImplemented, kommer tolken att ge upphov till ett lämpligt undantag. Felaktig retur av NotImplemented kommer att resultera i ett vilseledande felmeddelande eller att värdet NotImplemented returneras till Python-koden.

Se Implementering av aritmetiska operationer för exempel.

Försiktighet

NotImplemented och NotImplementedError är inte utbytbara. Denna konstant bör endast användas enligt beskrivningen ovan; se NotImplementedError för detaljer om korrekt användning av undantaget.

Ändrad i version 3.9: Utvärdering av NotImplemented i en boolesk kontext var föråldrad.

Ändrad i version 3.14: Utvärdering av NotImplemented i ett booleanskt sammanhang ger nu upphov till ett TypeError. Det utvärderades tidigare till True och gav upphov till en DeprecationWarning sedan Python 3.9.

Ellipsis

Samma som ellipsformuleringen ”...”. Specialvärde som främst används i samband med utökad slicing-syntax för användardefinierade containerdatatyper. Ellipsis är den enda förekomsten av typen types.EllipsisType.

__debug__

Denna konstant är sann om Python inte startades med ett -O-alternativ. Se även assert-satsen.

Anteckning

Namnen None, False, True och __debug__ kan inte tilldelas på nytt (tilldelningar till dem, även som ett attributnamn, ger upphov till SyntaxError), så de kan betraktas som ”sanna” konstanter.

Konstanter som läggs till av modulen site

Modulen site (som importeras automatiskt vid uppstart, utom om kommandoradsalternativet -S anges) lägger till flera konstanter i det inbyggda namnrymden. De är användbara för det interaktiva tolkskalet och bör inte användas i program.

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

Objekt som när de skrivs ut, skriver ut ett meddelande som ”Använd quit() eller Ctrl-D (dvs. EOF) för att avsluta”, och när de nås direkt i den interaktiva tolken eller anropas som funktioner, genererar SystemExit med den angivna avslutningskoden.

help

Objekt som när det skrivs ut, skriver ut meddelandet ”Type help() for interactive help, or help(object) for help about object.” och när det öppnas direkt i den interaktiva tolken, aktiverar det inbyggda hjälpsystemet (se help()).

credits

Objekt som när de skrivs ut eller anropas skriver ut texten för copyright respektive credits.

license

Objekt som när det skrivs ut visar meddelandet ”Skriv license() för att se hela licenstexten” och när det anropas visar hela licenstexten på ett personsökarliknande sätt (en skärm i taget).