Rozdział 5 · Pobawmy się liczbami!

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:

vstroennoe.py
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.

Python: to, co jest wbudowane, i to, co znajduje się w modułach
Wbudowane w język — dostępne zawsze
print() · abs()
round() · pow()
nie wymaga import
Moduł math - Oddzielna skrzynka narzędziowa
sqrt() · hypot() · gcd()
sin() · log() · pi
wymaga import math
Moduł to osobny, wcześniej podpisany zestaw narzędzi, niebędący częścią samego języka

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.py
import math

# teraz cała zawartość skrzynki pocztowej math dostępna w tym programie
print(math.sqrt(2))
import math nie chodzi o „włączenie matematyki”
String 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:

math.sqrt(25)
moduł
gdzie szukać
narzędzie
co robić
argument
czym pracować
Kropka oznacza „weź sqrt Z modułu math”

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ć:

math_pi.py
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:

eksperiment_1.py
import math

print(math.sqrt(25))

WYNIK: 5.0 to pierwiastek kwadratowy z 25.

eksperiment_2.py
import math

print(math.pi)

WYNIK: 3.141592653589793 to liczba π z dokładnością float.

eksperiment_3.py
import math

print(math.gcd(18, 24))

WYNIK: 6 — największy wspólny dzielnik 18 i 24.

eksperiment_4.py
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:

ToolSkądPotrzebujesz import?
abs(), round(), pow()są wbudowane w języknie
math.sqrt(), math.floor(), math.sin(), math.log()moduł mathimport math
Decimalmoduł decimal (rozdział 4)from decimal import Decimal
Fractionmoduł fractions (rozdział 4)from fractions import Fraction
Decimal i Fraction NIE są częścią math
To częste zamieszanie: 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:

Co potrafi moduł math
Korzenie i odległości
sqrt · isqrt
hypot · dist
Matematyka całkowita
gcd · lcm
factorial · comb · perm
Geometria
pi
hypot · dist
Trygonometria
sin · cos · tan
radians · degrees
Logarytmy i wzrost
log · log2 · log10 · exp
Każda karta to osobna sekcja poniżej, z prawdziwymi problemami i zdjęciami

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ęść.

Oficjalna dokumentacja nie jest wrogiem, lecz narzędziem
Kompletny i dokładny lista wszystko w 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.
Praktyka: moduł math — czym jest moduł i pierwsze wywołania
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →