Lesson 2
Liczba całkowita i liczba zmiennoprzecinkowa
1. Arytmetyka całkowita
Znamy już następujące operatory, które można zastosować do liczb: +
, -
, *
i **
. Operator dzielenia /
dla liczb całkowitych podaje liczbę rzeczywistą zmiennoprzecinkową (obiekt typu float
). Funkcja potęgowania **
zwraca również wartość zmiennoprzecinkową, gdy moc jest ujemna:
print(17 / 3) # daje 5,66666666667 print(2 ** 4) # daje 16 print(2 ** -2) # daje 0,25
Jest specjalna operacja dla podziału liczb całkowitych, w której reszta jest odrzucana: //
. Operacja, która daje resztę takiego podziału, wygląda na %
. Obie operacje zawsze dają obiekt typu int
.
print(17 / 3) # daje 5,66666666667 print(17 // 3) # daje 5 print(17 % 3) # daje 2
2. Liczb zmiennoprzecinkowych
Kiedy odczytujemy wartość całkowitą, czytamy wiersz z input()
a następnie rzutujemy ciąg na liczbę całkowitą za pomocą int()
. Kiedy odczytujemy liczbę zmiennoprzecinkową, musimy rzucić ciąg, aby unosić się za pomocą metody float()
:
x = float(input()) print(x)
Pływaki o bardzo dużej lub bardzo małej wartości bezwzględnej można zapisać za pomocą notacji naukowej. Np. Odległość od Ziemi do Słońca wynosi 1,496 · 10 11 , lub 1.496e11
w Pythonie. Masa jednej cząsteczki wody wynosi 2,99 · 10 -23 , lub 2.99e-23
w Pythonie.
Można rzutować obiekty pływające na obiekty int, odrzucając część ułamkową za pomocą funkcji int()
. Ta funkcja pokazuje tzw. Zaokrąglanie do zachowania zerowego :
print(int(1.3)) # daje 1 print(int(1.7)) # daje 1 print(int(-1.3)) # daje -1 print(int(-1.7)) # daje -1
Istnieje również funkcja round()
która wykonuje zwykłe zaokrąglenie:
print(round(1.3)) # daje 1 print(round(1.7)) # daje 2 print(round(-1.3)) # daje -1 print(round(-1.7)) # daje -2
Liczby rzeczywiste zmiennoprzecinkowe nie mogą być reprezentowane z dokładną precyzją ze względu na ograniczenia sprzętowe. Może to prowadzić do kłopotliwych efektów. Zobacz dokumentację w języku Python, aby poznać szczegóły.
print(0.1 + 0.2) # daje 0.30000000000000004
3. moduł matematyki
Python ma wiele funkcji pomocniczych do obliczeń za pomocą pływaków. Można je znaleźć w module math
.
Aby użyć tego modułu, musimy go najpierw zaimportować, pisząc na początku programu następującą instrukcję:
import math
Na przykład, jeśli chcemy znaleźć wartość math.ceil(x)
dla x
- najmniejsza liczba całkowita nie mniejsza niż x
- wywołujemy odpowiednią funkcję z modułu matematycznego: math.ceil(x)
. Składnia funkcji wywołania z modułów jest zawsze taka sama: module_name.function_name(argument_1, argument_2, ...)
import math x = math.ceil(4.2) print(x) print(math.ceil(1 + 3.8))
Istnieje inny sposób korzystania z funkcji z modułów: importowanie niektórych funkcji przez ich nazewnictwo:
from math import ceil x = 7 / 2 y = ceil(x) print(y)
Niektóre funkcje dotyczące liczb - int()
, round()
i abs()
(wartość bezwzględna vel modulus) - są wbudowane i nie wymagają żadnego importu.
Wszystkie funkcje dowolnego standardowego modułu Pythona są udokumentowane na oficjalnej stronie Pythona. Oto opis modułu matematycznego . Podano opis niektórych funkcji:
Funkcjonować | Opis |
---|---|
Zaokrąglanie | |
floor(x) | Zwróć dno x, największa liczba całkowita mniejsza lub równa x. |
ceil(x) | Zwróć pułap x, najmniejszą liczbę całkowitą większą lub równą x. |
Korzenie i logarytmy | |
sqrt(x) | Zwróć pierwiastek kwadratowy z x |
log(x) | Za pomocą jednego argumentu zwróć logarytm naturalny liczby x (do podstawy e). Za pomocą dwóch argumentów zwracamy logarytm x do podanej bazy |
e | Stała matematyczna e = 2,171828 ... |
Trygonometria | sin(x) | Zwróć sinus z x radian |
asin(x) | Zwróć arcus sinus x, w radianach |
pi | Stała matematyczna π = 3,1415 ... |