Lekce 10 - Knihovny math a random
V minulé lekci, Vícerozměrná pole v Pythonu, jsme se podívali na dvourozměrná 2D pole a vícerozměrná pole obecně, včetně příkladů a polí "zubatých".
Dnes se v Python tutoriálu naučíme používat některé z knihoven, hlavně tu základní matematickou.
Knihovny
Knihovny (neboli moduly) nám poskytují užitečný zdroj datových typů, funkcí a různých nástrojů, pro ještě lepší programy. Jednoduše nemusíme psát něco, co už někdo napsal před námi. Své programy složíme z existujících modulů a jejich vývoj bude pohodlnější a rychlejší.
import
Import knihoven (zpřístupnění knihovny) se provádí pomocí následující syntaxe:
Nejlepší způsob:
import nazev_modulu
Poté funkci z modulu voláme stejně, jako by to byla metoda modulu:
nazev_modulu.nazev_funkce()
Pokud chceme jen určitou funkci, můžeme ji importovat takto:
from nazev_modulu import nazev_funkce
Poté stačí napsat jen:
nazev_funkce()
Pro zpřístupnění všeho z modulu:
from nazev_modulu import *
Tohle používejte jen pokud víte, co děláte...
Lze použít i aliasy s následující syntaxí:
import nazev_modulu as vlastni_nazev
Aliasy se požívají pro import modulů z balíčků. Balíčky jsou seskupení více modulů.
Moduly se importují na začátku programu!
math
Jako první si představíme matematickou knihovnu Pythonu -
math
. Pojďme ji naimportovat:
import math
Modul math
obsahuje dvě konstanty - pí a Eulerovo číslo:
{PYTHON}
import math
print(math.pi)
print(math.e)
{/PYTHON}
Modul nám také poskytuje velmi užitečné funkce (metody) pro počítání. Nejzákladnější funkce jsou:
sin()
Vrátí hodnotu funkce sinus pro úhel v radiánech, který předáme jako parametr:
{PYTHON}
import math
print(math.sin(math.pi/2))
{/PYTHON}
cos()
Vrátí hodnotu funkce cosinus pro úhel v radiánech, který předáme jako parametr:
{PYTHON}
import math
print(math.cos(math.pi))
{/PYTHON}
tan()
Vrátí hodnotu funkce cosinus pro úhel v radiánech, který předáme jako parametr:
asin()
Vrátí úhel v radiánech pro danou hodnotu, jenž vznikla z funkce sinus. Opačná funkce k sinus, hodnotu předáme v parametru.
acos()
Vrátí úhel v radiánech pro danou hodnotu, jenž vznikla z funkce cosinus. Opačná funkce k cosinus, hodnotu předáme v parametru.
atan()
Vrátí úhel v radiánech pro danou hodnotu, jenž vznikla z funkce tangens. Opačná funkce k tangens, hodnotu předáme v parametru.
degrees()
Vrátí hodnotu úhlu převedenou z radiánů na stupně. Parametrem je úhel v radiánech:
{PYTHON}
import math
print(math.degrees(math.pi))
{/PYTHON}
ceil()
Zaokrouhlí číslo na nejbližší celé číslo směrem nahoru:
{PYTHON}
import math
print(math.ceil(3.1))
{/PYTHON}
floor()
Zaokrouhlí číslo na nejbližší celé číslo směrem dolů:
{PYTHON}
import math
print(math.floor(3.1))
{/PYTHON}
fabs()
Vrátí absolutní hodnotu desetinného čísla. Vestavěná funkce
abs()
vrací absolutní hodnotu celého čísla.
{PYTHON}
import math
print(math.fabs(-3.1))
{/PYTHON}
factorial()
Vrátí faktoriál daného čísla. Pokud je hodnota nečíselná nebo
záporná, vyvolá výjimku ValueError
:
{PYTHON}
import math
print(math.factorial(4))
{/PYTHON}
pow()
Umocní první předané číslo na druhé číslo:
{PYTHON}
import math
print(math.pow(2, 3))
{/PYTHON}
sqrt()
Vrátí druhou odmocninu z daného čísla:
{PYTHON}
import math
print(math.sqrt(16))
{/PYTHON}
hypot()
Vrátí eukleidovskou vzdálenost, tj. math.sqrt(x*x + y*y)
:
{PYTHON}
import math
print(math.hypot(3, 4))
{/PYTHON}
log()
Vrátí logaritmus čísla o základu, je-li zadán. Pokud ne, vrátí hodnotu přirozeného logaritmu (se základem Eulerova čísla).
{PYTHON}
import math
print(math.log(16, 4))
{/PYTHON}
log10()
Vrátí logaritmus o základu 10
z daného čísla:
{PYTHON}
import math
print(math.log10(1000))
{/PYTHON}
log2()
Vrátí logaritmus o základu 2
z daného čísla:
{PYTHON}
import math
print(math.log2(32))
{/PYTHON}
A to byl výčet základních funkcí modulu math
. Chcete-li
další, stačí napsat help(math)
- pozor - modul
math
musí být naimportován!
random
Jako druhý modul si představíme random
, pojďme ho
naimportovat:
import random
Modul random
nám poskytuje mnoho užitečných funkcí. Tyto
funkce nám umožňují generovat pseudo-náhodná čísla, míchat seznamy,
vybírat z nich náhodně prvky a mnoho dalších. My si představíme
základní z nich.
randint()
Vybere náhodné číslo v rozsahu od prvního do druhého čísla:
{PYTHON}
import random
print(random.randint(1, 4))
print(random.randint(1, 4))
print(random.randint(1, 4))
print(random.randint(1, 4))
{/PYTHON}
choice()
Vybere náhodný prvek se seznamu (nebo jiné kolekce):
{PYTHON}
import random
seznam = [1, 2, 3, 4, 5]
print(random.choice(seznam))
{/PYTHON}
shuffle()
Zamíchá pořadí prvků v seznamu. Lze použít i jiný datový typ, který
podporuje přiřazování.(Zatím jiné kromě seznamu neznáme )
{PYTHON}
import random
seznam = [1, 2, 3, 4, 5]
random.shuffle(seznam)
print(seznam)
{/PYTHON}
sample()
Náhodně vybere množství prvků ze seznamu. Lze použít i jinou kolekci.
(Zatím jinou kromě seznamu neznáme )
{PYTHON}
import random
seznam = [1, 2, 3, 4, 5]
print(random.sample(seznam, 3))
{/PYTHON}
Easter eggs
Na závěr sekce se základy Pythonu se podíváme na easter eggs. To jsou
skryté a zábavné funkčnosti, které do jazyka schovali jeho tvůrci. Python
jich pár obsahuje Zkuste si
napsat:
1:
import this
2:
import antigravity
3:
import __hello__
4:
from __future__ import braces
5:
Dále si můžete v interaktivní konzoli upravit:
'>>> '
a
'... '
Pomocí:
>>> import sys >>> sys.ps1 = "--> " --> sys.ps2 = "--- " #následuje příklad --> if True: --- print("Hello World!") --- --> Hello World!
Tak a to je pro dnešní lekci vše a tuto sekci vše. Kurz nyní pokračuje v sekci Základy objektově orientovaného programování v Pythonu. Příště si tedy představíme objektový svět a pochopíme mnoho věcí, které nám byly až doteď utajovány.
V příští lekci, Nejčastější chyby Python nováčků - Umíš pojmenovat proměnné?, si ukážeme nejčastější chyby začátečníků v Pythonu ohledně pojmenování proměnných.
Komentáře


Zobrazeno 8 zpráv z 8.