Search
Python je interpretovaný vysokoúrovňový programovací jazyk vytvořený v roce 1991. Instalaci pythonu je možné stáhnout na stránce, aktuální nejnovější verze je Python 3.9.7 (psáno 11.9.2021).
Pro spuštění příkazového okna (interaktivního režimu, interpreteru) jazyku python stačí v příkazové řádce (např. cmd ve windows) zavolat příkaz python (eventuelně python3 pro spuštění verze 3 v případě více nainstalovaných verzí jazyka python).
python
python3
Pro psaní skriptů je možné použít jakýkoli textový editor a daný příkaz či jejich posloupnost uložit do textového soubour (doporučená přípona py). Interpretace příkazů je pak možné provést z příkazové řádky pomocí python nazev.py
python nazev.py
Intalace Pythonu v sobě obsahuje jednoduchý editor spolu s příkazovým oknem (command window) zvaný Idle
Dále je možné pracovat v celé řadě vývojových prostředí, například v profesionálním PyCharm jehož instalace je pro studenty ČVUT dostupná zdarma na tomto odkazu.
Jako alternativa k instalci Pythonu a hledaní vývojového prostředí je možné nainstalovat platformu Anaconda jejíž součástí je vývojové prostředí Spyder. Pokud nechcete instalovat celou platformu Anaconda, je možné nainstalovat její minimální varinatu zvanou Miniconda a později doinstalovat potřebné knihovny či vývojové prostředí Spyder.
Interaktivní variantu příkazového okna (interpreteru) nabízí Interactive Python - IPython (web, dokumentace)
Po vzoru programů Mathematica či Maple, které mají prostředí ve stylu notebooku, kde jednotlivé výpočty uživatel provádí v buňkách, byl v roce 2011 vytvořen IPython notebook nabízející prostředí integrované do webového prohlížeče.
V roce 2014 vzešel z IPython nooteboku projekt Jupyter (web), který představuje prostředí umožňující integrovat výpočty ve více programovacích jazycích. Název vychází ze tří jazyků: Julia, Python, a R.
V roce 2018 vznikl Jupterlab představující nové rozhraní (novou generaci) integrující v sobě Jupyter notebook. Jupyterlab v sobě lépe integruje potřebné nástroje pro vývoj: textový editor, příkazovou řádku, prohlížeč souborů, atd. Pro více informací je zde krátké video
Projekt Jupyter je vhodný zejména ve výuce a výzkumu. Interaktivnost notebooku spolu s možností připojit komentář (dokumentaci) umožňuje prezentovat a sdílet výsledky výzkumu s ostatními. Příklad notebooku je zde
Markdown je tzv. značkovácí (markup) jazyk, který slouží pro úpravu/formátování textu. Tato buňka, i buňky předcházející, obsahují Markdown.
Markdown umožňuje jednoduše formátovat text: tučný text, kurziva, odkaz
citace
viz Syntax 1, Syntax 2
# komentar na jednom radku ''' vice radkovy komentar vice radkovy komentar vice radkovy komentar '''
a = 5 b = 9 # součet dvou proměnných a zápis do nové proměnné c = a + b
c = A + b
V případě, že máte v kódu chybu Python vypíše tzv. traceback.
# desetinná čísla (float) d = 0.75 # komplexní čísla e = 1 + 2j # text (string) f = 'foo' g = "foo" # binární logická hodnota (True/False) h = True
a = int('4') b = float(4) c = str(4.0) d = complex(2,5) e = bool("false")
type(b) # respektive print(type(b)), viz níže
# program vypise retezec Hello world na standardni vystup print('Hello world!')
# Stejný výsledek i bez print # POZOR - Toto lze jen díky IPythonu, standardní Python by skončíl chybou! 'Hello World!'
a = 5 b = a print(a,b)
a = 5 b = a a = 7 print(a,b)
a = b = c = 9 print(a,b,c) a, b, c = 1, 2, 3 print(a,b,c)
a, b = 1,2 b, a = a, b print(a,b)
# Násobení a*2 # Mocnina a**2 # Dělení a/2 # Celočíselné dělení a//2 # Modulo (zbytek po dělení) a%2
Deklarujte proměnnou a, vypočítejte/deklarujte proměnnou b a zjistěte typ proměnné b.
# Kombinace se zápisem do proměnné a = 14 a += 1 # místo a = a+1 a /= 3 a %= 3 # Jaké číslo bude v proměnné a?
a = 'nula' b = "jedna" c = a+b
# Můžeme sečíst číslo a text? c = 5+a
# Můžeme vynásobit číslo a text? c = 5*a
a = "Cvičení nás "strašně" baví!" print(a) # tzv. escape znaku a = "Cvičení nás \"strašně\" baví!" print(a)
jmeno = input('zadejte vase jmeno: ') prijmeni = input('zadejte vase prijmeni: ') vek = input('zadejte svuj vek: ') print('Jmenuji se ',jmeno, ' ', prijmeni, 'a je mi ', vek, 'let.')
print('Jmenuji se %s %s a je mi %s let.' % (jmeno, prijmeni, vek)) print(f'Jmenuji se {jmeno} {prijmeni} a je mi {vek} let.') print('Jmenuji se {0:s} {1:s} a je mi {2:s} let.'.format(jmeno, prijmeni, vek))
Použijte proměnnou vek. Zamyslete se nad postupem.
budouci_vek = print('Za dva roky mi bude {0:d}.'.format(budouci_vek))
x = 3.14159265
\u03C0 je Unicode znak pro $\pi$
print('\u03C0 = ',x)
Vyzkoušejte a zkuste pochopit jak fungují jednotlivé formátovací možnosti
print('\u03C0 = %s' % x)
print('\u03C0 = %d' % x)
print('\u03C0 = %.3d' % x)
print('\u03C0 = %.3f' % x)
print(f'\u03C0 = {x}')
print('\u03C0 = {0:.3f}'.format(x))
Nechte uživatele zapsat délky odvěsen (standardni vstup). Vypočtěte přeponu, výsledek zapište do nové proměnné a pomocí funkce pro standardní výstup vypište výsledek. Odmocninu můžete vypočítat pomocí mocniny.
# Nový řádek print('prvni radek\ndruhy radek')
# Tabulator print('list:\n\tovoce\n\tzelenina')
Co když uživatel omylem zadá omylem mezeru (nebo nějaký jiný znak) před/za svůj věk?
Použití metod .rstrip, .lstrip, .strip
vek = '*90 ' budouci_vek = print(f'Uzivateli je {vek} let a za rok mu bude {budouci_vek}.')
Použití metod .rjust, .ljust, .center
Použijte libovolnou metodu pro centrování/zarovnání s libovolným vyplňovacím znakem tak, aby byla výsledná délka řetezce 30 znaků. Ověřte.
test_string = 'Konec cviceni' # funkce len() složí pro výpočet délky/počtu znaků proměnné print(len(test_string))