# Wbudowane stałe

We wbudowanej przestrzeni nazw znajduje się kilka stałych. Są to:

False

  Wartość „fałsz” typu `bool`. Przypisania do `False` są niedozwolone i rzucają wyjątkiem `SyntaxError`.

True

  Wartość „prawda” typu `bool`. Przypisania do `True` są niedozwolone i rzucają wyjątkiem `SyntaxError`.

None

  Obiekt często używany do reprezentowania braku wartości, na przykład gdy domyślne argumenty nie są przekazywane do funkcji. Przypisania do `None` są niedozwolone i rzucają wyjątkiem `SyntaxError`. `None` jest jedyną instancją typu `NoneType`.

NotImplemented

  Specjalna wartość, która powinna być zwracana przez specjalne metody binarne (np. `__eq__()`, `__lt__()`, `__add__()`, `__rsub__()`, itp.) aby zasygnalizować, że dana operacja nie jest zaimplementowana w odniesieniu do drugiego typu; może być zwracana przez specjalne metody binarne operujące w miejscu (ang. in-place) (np. `__imul__()`, `__iand__()`, itp.) w tym samym celu. Nie powinna być ewaluowana w kontekście logicznym. `NotImplemented` jest jedyną instancją typu `types.NotImplementedType`.

  Informacja

  Gdy metoda binarna (albo operująca w miejscu) zwróci `NotImplemented`, interpreter spróbuje wykonać odpowiadającą jej operację na drugim typie (albo innego mechanizmu rezerwowego, w zależności od rodzaju operatora). Dopiero gdy wszystkie próby zwrócą `NotImplemented`, interpreter rzuci odpowiednim wyjątkiem. Nieprawidłowe zwracanie `NotImplemented` spowoduje wyświetlenie mylnego komunikatu błędu lub też zwrócenie wartości `NotImplemented` do kodu Pythona.

  Zobacz przykłady w Implementing the arithmetic operations.

  Informacja

  `NotImplementedError` i `NotImplemented` nie są wymienne, nawet jeśli mają podobne nazwy i zastosowanie. Zobacz `NotImplementedError` by dowiedzieć się kiedy go użyć.

  Zmienione w wersji 3.9: Ewaluacja `NotImplemented` w kontekście logicznym jest przestarzała. Podczas gdy obecnie jej wartość zostanie oceniona jako „prawda”, to jednocześnie wyemituje ostrzeżenie `DeprecationWarning`. W przyszłych wersjach Pythona będzie rzucać wyjątkiem `TypeError`.

Ellipsis

  To samo co literalny zapis wielokropka „`...`”. Wartość specjalna używana głównie w połączeniu z rozszerzoną składnią krojenia typów danych kontenerów zdefiniowanych przez użytkownika. `Ellipsis` jest jedyną instancją typu `types.EllipsisType`.

__debug__

  Ta stała ma wartość True jeśli Python nie został uruchomiony z opcją `-O`. Zobacz także deklarację `assert`.

Informacja

Nazwy `None`, `False`, `True` oraz `__debug__` nie mogą być przypisane ponownie (przypisania do nich, nawet jako nazwa atrybutu, rzucają `SyntaxError`), więc mogą być uważane za „prawdziwe” stałe.

## Stałe dodane przez moduł `site`

Moduł `site` (który jest importowany automatycznie podczas uruchamiania, z wyjątkiem sytuacji, gdy podano opcję wiersza poleceń `-S`) dodaje kilka stałych do wbudowanej przestrzeni nazw. Są one przydatne w interaktywnej powłoce interpretera i nie powinny być używane w programach.

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

  Obiekty, które, gdy ich nazwa zostanie wpisana w powłoce - wyświetlają wiadomość w formie „Use quit() or Ctrl-D (i.e. EOF) to exit”, a gdy wywołane - rzucą wyjątek `SystemExit` z podanym kodem wyjścia.

copyright
credits

  Obiekty, które, gdy wypisane lub wywołane - wyświetlają treść odpowiednio praw autorskich i słów uznania.

license

  Obiekt, który, gdy jego nazwa zostanie wpisana w powłoce - wyświetla wiadomość „Type license() to see the full license text”, a gdy wywołany - wyświetla pełny tekst licencji w sposób podobny do pagera (jeden ekran na raz).