int — liczby całkowite bez obaw o duże wartości
Liczby całkowite w Python mogą rosnąć znacznie bardziej niż w większości innych języków — i jednocześnie pozostają obiektami niezmiennymi.
int (integer jest liczbą całkowitą) jest typem liczb bez ułamków
części: dodatnie, ujemne i zero.
print(0)
print(42)
print(-17)
print(type(42))
Liczby z niemal zerowym limitem wielkości
W przeciwieństwie do wielu innych języków programowania, gdzie liczby całkowite są ograniczone
stały zakres (np. 32 lub 64 bity), w Python int
może rosnąć tak bardzo – dokładność dowolny, ograniczone w praktyce
tylko dostępna pamięć komputera, nie język.
huge = 10 ** 100
print(huge)
liczby są niezmienne – ciąg dalszy
Widzieliśmy to już w sekcji 4.1 na przykładzie age. Znowu, już
z dwoma nazwami:
a = 10
b = a
a += 1
print(a) # 11
print(b) # 10 — b się nie zmienił
id(256) oraz id(257) jako „dowód”bool jest szczególnym krewnym int
Wartości True oraz False forma
Typ bool — i historycznie jest ściśle związany z
int: True zachowuje się jak
1, a False — jak
0.
print(int(True)) # 1
print(int(False)) # 0
print(True + True) # 2
bool technicznie „liczbowy” — element języka, a nie wezwanie do dodawania True + True w rzeczywistym kodzie. Więcej informacji o warunkach i logice można znaleźć w rozdziale o warunkach; tutaj wystarczy znać związek z liczbami, jeśli gdzieś go znajdziesz.Podkreślenia separatorów dla czytelności
W długich liczbach łatwo stracić rachubę zer. Python pozwala na podzielenie liczby Podkreślenia — nie wpływają one na znaczenie, a jedynie na czytelność:
population = 38_000_000
print(population) # 38000000
Skrócone przydziały
Operatorzy tacy jak += jest zwartym zapisem "liczenia i
przydzielić" zamiast "zmienić numer na miejscu":
x = 10
x += 1 # to samo co x = x + 1
x -= 2 # tak samo jak x = x - 2
x *= 3 # tak samo jak x = x * 3