Moduł math – Od katalogu do narzędzi
Czym jest moduł, dlaczego potrzebujesz import i co oznacza punkt w math.sqrt() — zanim przejdziemy do konkretnych funkcji, zastanówmy się, jak działa ten zestaw narzędzi ogólnie.
Python już potrafi liczyć coś bez żadnego przygotowania:
print(abs(-7)) # 7
print(round(4.5)) # 4
print(pow(2, 10)) # 1024
Ale na świecie jest znacznie więcej prawdziwej matematyki niż cztery wbudowane funkcje: pierwiastki, sinusy, logarytmy, praca z kątami i odległościami. Gdyby tylko wszystko takie narzędzia byłyby wbudowane bezpośrednio w język — Python stałby się zagraconym lista z setkami nazw, i byłoby niemożliwe zapamiętać, co jest w ogóle dostępne.
Moduł to osobna, podpisana skrzynka narzędziowa
Zamiast tego standardowa biblioteka Python organizuje powiązane narzędzia w
moduły — oddzielne „pudełka”, które leżą obok siebie, ale nie mieszają się bezpośrednio z językiem ani między sobą. Jedno z takich pudełek nazywa się math —
Zawiera narzędzia matematyczne: pierwiastki, trygonometrię, logarytmy i wiele innych.
import math — otwieramy szufladę
Używać narzędzi z szuflady math, musi tak być
Na pierwszy rzut oka jest to oczywiste otwórz — drużyna import:
import math
# teraz cała zawartość skrzynki pocztowej math dostępna w tym programie
print(math.sqrt(2))
import math mniej więcej oznacza: „udostępnij zawartość modułu math w tym programie.” math.sqrt(25) spowoduje NameError — Python jeszcze nie wie, gdzie szukać math.Co oznacza kropka
Przeanalizujmy nagranie math.sqrt(25) części:
Kropka tutaj oznacza "weź sqrt z modułu
math" jest Python rozróżnia, na przykład, math.sqrt
z innej funkcji o podobnej nazwie z zupełnie innego modułu: każdy
Narzędzie ma swój wyraźny adres.
A co jeśli nie potrzebujesz argumentu: math.pi
math.pi nie jest funkcją, lecz gotową znaczenie
(stała): Liczba π została już obliczona i znajduje się wewnątrz modułu pod nazwą pi.
Dlatego nie ma nawiasów — nawiasy oznaczają „wywołanie funkcji”
pi nie musisz tego nazywać, wystarczy przeczytać:
import math
print(math.pi) # 3.141592653589793 — wartość, nie wywołanie
print(math.sqrt(25)) #5.0 — i to jest wywołanie funkcji, więc są nawiasy
Pierwsze eksperymenty
Kilka małych przykładów to kod i jego wynik:
import math
print(math.sqrt(25))
WYNIK: 5.0 to pierwiastek kwadratowy z 25.
import math
print(math.pi)
WYNIK: 3.141592653589793 to liczba π z dokładnością float.
import math
print(math.gcd(18, 24))
WYNIK: 6 — największy wspólny dzielnik 18 i 24.
import math
print(math.hypot(3, 4))
WYNIK: 5.0 to długość przeprostokąta trójkąta prostokątnego o bokach 3 i 4.
Wbudowany vs math – nie myl
Jeszcze raz wyznaczmy wyraźną granicę — które narzędzia są wbudowane bezpośrednio w język, a które muszą importować wprost, a skąd:
| Tool | Skąd | Potrzebujesz import? |
|---|---|---|
abs(), round(), pow() | są wbudowane w język | nie |
math.sqrt(), math.floor(), math.sin(), math.log() | moduł math | import math |
Decimal | moduł decimal (rozdział 4) | from decimal import Decimal |
Fraction | moduł fractions (rozdział 4) | from fractions import Fraction |
Decimal oraz Fraction z rozdziału 4 to narzędzia do dokładnych liczb, ale istnieją we WŁASNYCH modułach (decimal oraz fractions), osobno od math. Trzy różne skrzynki — trzy różne importy.Pełna mapa: Co math może zrobić
Teraz, gdy rozumiesz, czym jest moduł i dlaczego potrzebujesz punktu, możesz spokojnie spojrzeć na
Mapa czegoś math sugeruje, kolejne sekcje rozdziału będą obejmować
Każda karta szczegółowo, z rzeczywistymi zadaniami:
Jak szukać czegoś, co nie znajduje się na mapie
U math około pięćdziesięciu funkcji – ta mapa pokazuje tylko
Najbardziej przydatne na początek. Nikt nie pamięta o całej lista i to jest w porządku:
Profesjonalna umiejętność to nie „znać wszystko na pamięć” mniej więcejto
i szybko znaleźć dokładną część.
math, na oficjalnej stronie dokumentacji Python 3.14: docs.python.org/3.14/library/math (Standard Library → math). Doświadczeni programiści często tam patrzą — to nie jest oznaka ignorancji, lecz normalna część pracy.