Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Modul

Může se stát, že se kód, který píšeme, stane nepřehledným a chtělo by ho rozdělit do více souborů. Většinou platí, že každý soubor s kódem by měl být zodpovědný za jednu konkrétní věc nebo funkci našeho programu. Pokud takto rozdělujeme kód podle zodpovědností kódu, říkáme těmto souborům moduly. Ty pak můžeme importovat do jiných souborů a tam je používat.

Vlastním modulům se v této kapitole věnovat nebudeme, podíváme se však na moduly které nabízí sám Python – je jich totiž hodně a mohou se hodit.

math

Modul math obsahuje matematické funkce a konstanty, které se dají použít pro matematické výpočty. Protože je toto první modul, se kterým se setkáváme, nejdřív se podíváme na to, jak moduly importovat.

import math

Pomocí klíčového slova import se importuje celý modul, který pak můžeme používat v našem kódu. Všechny funkce a konstanty dostupné v modulu math jsou k přečtení na oficiální stránkách Python dokumentace modulu math. Pokud chceme použít konstantu , která je k dispozici v modulu math, můžeme to udělat takto:

import math

print(math.pi)

Třeba pro výpočet sinu použijeme funkci math.sin:

import math

print(math.sin(math.pi))

random

Modul random obsahuje funkce pro generování náhodných čísel a práci s nimi. Veškeré dostupné funkce v tomto modulu jsou k přečtení na oficiální stránkách Python dokumentace modulu random.

Hodí se však znát tyto funkce:

from random import randint

print(randint(1, 10))

Funkce randint vrací náhodné celé číslo v zadaném rozsahu (včetně obou krajních hodnot).

from random import choice

print(choice([1, 2, 3, 4, 5]))

Funkce choice vrací náhodný prvek z seznamu.

Zde vidíme použítí klíčových slov from ... import ..., což nám dovolí importovat funkci nebo konstantu z modulu bez nutnosti importovat celý modul a psát jméno modulu před každou funkcí nebo konstantou. U takto importovaných funkcí a konstant si dobře rozmyslete, jestli je opravdu takto chcete importovat – pokud budete mít stejně pojmenovanou funkci ve svém souboru, import nebude fungovat správně.