-
Co chci dělat v tomto videu, je ukázat vám
-
a představit,
-
co vlastně počítačový program je.
-
A jen pro případ, že byste pak chtěli pokračovat,
-
rozhodně vám to doporučuji,
-
protože nejlepší cesta, jak se naučit IT
-
je všechny ty věci vyzkoušet osobně.
-
Toto je prostředí Pythonu a já budu dělat hodně
-
programování v Pythonu.
-
Toto vývojové prostředí se jmenuje PyScripter. P-Y-S-C-R-I-P-T-E-R. Je zdarma.
-
. P-Y-S-C-R-I-P-T-E-R. Je zdarma.
-
Je to open-source software.
-
A já používám Python... Python, myslím verzi 2.6 nebo 2.7.
-
myslím verzi 2.6 nebo 2.7.
-
Dokud budete používat Python 2, vaše příklady budou stejné jako ty moje,
-
vaše příklady budou stejné jako ty moje,
-
budou fungovat stejně.
-
. Ale pokud používáte Python 3,
-
budete občas muset používat trochu
-
jiné variace kódu, aby to fungovalo správně.
-
Pokusíme se na to upozornit, pokud se to stane.
-
Začneme tím, že si napíšeme počítačový program.
-
Co je na tom husté je,
-
že můžeme program psát rovnou tady.
-
Ve skutečnosti jen upravujeme text v souboru.
-
To je vše.
-
Je to posloupnost instrukcí a počítač začne na začátku
-
a počítač začne na začátku
-
souboru a prostě půjde dolů a bude číst instrukce.
-
a bude číst instrukce.
-
Ačkoliv později zjístíte,
-
že existuje způsob, jak říct počítači,
-
aby něco přeskočil nebo aby opakoval
-
některé instrukce, takže pak může dělat některé věci pořád dokola nebo jiné přeskakovat.
-
To jsme si řekli. Pojďme si napsat jednoduchý program
-
a zatímco to budeme dělat,
-
představíme si některé stavební kameny,
-
které má každý počítačový program.
-
Dovolte mi napsat velmi velmi jednoduchý počítačový program,
-
tak jednoduchý počítačový program,
-
který bude spíš jen výrazem.
-
Takže napíšu prostě "3+7", takže to doslova
-
vezme 3+7 a vytiskne (zobrazí). Program předá
-
3+7 zobrazovací funkci,
-
která je součástí Pythonu.
-
Možná to radši napíšu takhle: print(3+7)
-
Pojďme si tenhle soubor uložit. Takže tu je opravdu jen jeden,
-
když se na to podíváte, opravdu jen jeden příkaz
-
tady na prvním řádku. A ten říká vytiskni (anglicky print) 3+7
-
Tak, pojme přidat ještě jeden příkaz,
-
jen abyste viděli, že program postupuje odshora dolů.
-
Takže dopíšu další: print(2-1)
-
a pak řekneme: print("tohle je kousek textu")
-
A teď se pojďme podívat, co tenhle počítačový program,
-
který máme před sebou, bude dělat.
-
Nejdřív ho uložíme.
-
Povidám uložíme.
-
Uložil jsem ho jako soubor "testarea.py". To nám říká...
-
Ta přípona ".py" singnalizuje, že je to Python soubor.
-
Teď si ten program pustíme.
-
Na těchto vývojových prostředích...
-
těchto IDE (zkratka z Integrated Development Environment, anglicky integrované vývojové prostředí), je hezké to,
-
že můžeš vlastně psát i spouštět program na tom samém místě.
-
Taky se tu pěkně barevně zvýrazňuje text,
-
takže pěkně vidíš, co je funkce, co není funkce
-
, různé datové typy...
-
o různých datových typech se budeme bavit časem.
-
Takže si spustíme ten program a uvidíme, co se stane.
-
Koukněte na to, spustili jsme to.
-
Takže program vypsal 10, potom vypsal 1 a pak vypsal
-
"tohle je kousek textu"
-
Takže provedl přesně to, co jsme mu řekli.
-
A to popořadě.
-
Začal tady, vypočítal, že 3+7 je 10
-
a výsledek vypsal, takže tady vypsal 10.
-
A potom vypsal 2-1
-
a nakonec "tohle je kousek textu".
-
Jedna věc, kterou vám chci představit
-
hned na počátku jsou datové typy.
-
Když jste viděli tento příklad,
-
možná máte pocit, že
-
je tu něco odlišného
-
mezi 3 nebo 2 nebo 1 nebo 7 a mezi tímto blokem textu.
-
Toto je číslo. Čísla mohu sčítat. Reprezentují
-
množství. Zatímco tady tohle představuje
-
kus textu.
-
Takže váš pocit byl správný.
-
Jedná se o různé datové typy.
-
3 a 7 a 1 ... toto jsou numerické znaky.
-
V tomto případě jsou to celá čísla. (integer)
-
A můžete .. tady zde
-
se jedná o řetězec (string),
-
to je slovo, které při programování uslyšíte často.
-
Jedná se vlastně o řetězec znaků.
-
A v Pythonu se můžeme zeptat
-
jaký typ jsou tyto věci.
-
Můžete vybrat funkci "type"
-
tak a teď by to mělo vytisknout (zobrazit) typ 3+7 a ne jen 10.
-
Zkusme to. A také vytisknu 2-1, abych vám ukázal rozdíl.
-
Potom vytisknu "type" ... typ tohoto bloku textu.
-
Typ tohoto bloku textu.
-
Uložme to za použití klávesové zkratky CTRL + S
-
To je zkratka pro uložení
-
a pak program zkusím spustit.
-
A tady to máte.
-
Program vyhodnotil tento výraz.
-
Začíná vnitřními závorkami.
-
3+7 je 10. Potom vyhodnotí typ této 10, který je číslo - "int"
(zkratka z angl. integer)
-
typ int a vytiskne to (type ´int´).
-
Tady to vidíte: (type ´int´).
-
int je zkratka z anglického "integer".
-
Potom program říká: vytiskni (2-1).
-
A vidíte to tady na tomto řádku.
-
Je zde 1.
-
A pak tiskne typ celé této věci
-
právě tady dole. Takže místo vytištění textu,
-
vytiskl jeho typ. A tento typ je řetězec - string.
-
Další věc, kterou vám chci představit,
-
při experimentování s programy je
-
koncept proměnné.
-
Protože budeme chtít
-
ukládat tyto věci v různých místech.
-
Naučíme se v následujících videích, že v Pythonu
-
je to spíše jako bychom měli popisky pro tyto věci.
-
A tyto popisky se mohou měnit.
-
Nebo můžeme zvolit jiný typ popisků.
-
Zkusme napsat úplně jiný program za použití proměnných.
-
Co je "hustý" na Pythonu,
-
i když to někteří nemají rádi, je že
-
můžete vložit jakýkoliv datový typ do jakéhokoliv typu proměnné.
-
Můžete říct a=3+5. Potom můžeme říct
-
b=a*a-a-1
-
(pozn. * znamená krát - násobení)
-
a potom můžete říct c=a*b (c se rovná a krát b)
-
Pak můžete mít něco jako ...
-
Udělám zde prostor pro lepší přehlednost.
-
c = a*b
-
A nakonec vytiskni (print) c.
-
Pokud chcete můžete si zkusit
-
domyslet jak bude c vypadat,
-
nebo můžeme spustit tento program.
-
Spustíme program a potom
-
se můžeme vrátit abychom viděli,
-
jestli jsme postupovali správně.
-
Uložím program
-
a spustím ho.
-
Dostáváme c=440. Podívejme se, jestli to dává smysl.
-
3+5 je 8. Takže popiska "a" se bude vztahovat k číslu 8.
-
Ve kterémkoliv místě programu, pokud nezměníme definici pro "a".
-
Kdykoliv použijete "a", řekne si to: a je 8, a se vztahuje k 8.
-
A když se posuneme dolů, kde je definice "b", říká nám
-
a*a. Program bere v úvahu pořadí operací,
-
takže násobí první.
-
Zvláště před odčítáním.
-
Tedy a*a je 64.
-
64 - a je 64 - 8, což je 56. Mínus 1 je 55
-
Takže "b" je 55. A "c" bude a*b,
-
8 krát 55 je doopravdy 440.
-
Funguje to.
-
Možná chcete vidět, co se stane, když
-
dostanete jiná "a"..
-
Můžete to vyzkoušet.
-
Můžete změnit to co se stane různými "a".
-
Zadáno máme, že a se rovná...
-
Řekněme že a = -6
-
a spustíme program, abychom viděli, co se stane.
-
Dostáváme -246. A můžete si to ověřit.
-
Projděte řádek po řádku a za tyto proměnné
-
dosaďte,
-
a uvidíte, jestli dostanete právě tento výsledek.
-
Pokud by programy byly jen pár příkazů
-
a vždy jste je přímo prošli,
-
nebylo by možné dělat opravdu zajímavé věci.
-
Pro programování opravdu zajímavých věcí
-
se pustíte do věcí jako jsou
-
podmínky (Conditionals) a smyčky (Loops)
-
Uděláme to täkto.
-
Podívejme se na podmínku. Tady tyhle věci tu nechám.
-
a napíšu "if (a<0):". V tomto případě vypíšeme (c)
-
potom napíšu "else" a v takovém případě se vypíše (c-a).
-
Je to zajímavé. Možná už tušíte,
-
co se tu stane. Ale uložme si to.
-
Je to úžasné, kolik můžete udělat právě
-
s podmínkami. Tohle říká:
-
pokud "a" je menší než 0, udělej toto, jinak
-
pokud "a" není menší než 0, udělej tamto.
-
Všimněte si, že nepostupujeme přímo od shora dolů.
-
V závislosti na tom, zda "a" je méně než 0 nebo ne,
-
program buď provede tento řádek,
-
nebo provede tenhle řádek.
-
A způsob, jak Python pozná, že má provést pouze tento řádek
-
"pritn(c)", pokud "a" je menší než 0 je, že
-
print(c) je odsazeno. Odsazení je součást tohoto příkazu.
-
Způsob, jak Python rozliší, že se jedná o novou větu, nový příkaz
-
je tato dvojtečka.
-
A pak jak víme co spustit?
-
Pokud se nic z toho nestane
-
Pokud "a není méně než 0, pak provede tento příkaz.
-
Pokud chcete udělat něco dalšího po tomto,
-
bez ohleduna to, zda je "a" menší než nula nebo ne,
-
pak to můžete vyjmout z tohoto příkazu právě tím,
-
že se zbavíte odsazení.
-
Tak, teď můžete vytisknout
-
"we are done with the program".
-
Vlastně, přidejme další věci do tohoto příkazu.
-
Vytiskněme zde "a<0".
-
Všimněte si: tohle nebude vypočítáno.
-
Máme to uvnitř řetězce, takže to bude
-
vytištěno takto. Zde říkáme
-
vytiskni("a is not less than 0")
-
To je zajímavý program. Teď ho spustíme.
-
Doufejme, že bude fungovat. Uložím to. Spusťme program.
-
a zobrazil nám "a<0",
-
--- posunem se trochu nahoru ---
-
Zobrazilo se 'a<0'.
-
to nám ukazuje, že jsme uvnitř tohoto příkazu.
-
Zobrazilo se tohle a potom "c", které je -246.
-
Neprovedlo se toto, protože to by bylo provedeno
-
pouze pokud by to bylo méně než 0.
-
Ale potom přechází z tohoto příkazu
-
a zobrazuje
-
"we are done with the program", bez ohledu na cokoli.
-
Zkusíme teď změnit "a", abychom viděli, zda můžeme
-
spustit i tento příkaz.
-
Udělejme "a" větší než 0.
-
Udělejme "a" se rovná 9 a spusťme program.
-
Tak. "a" je 9. Kontroluje to zda je menší než 0?
-
do, "a" není menší než 0,
-
takže toto nebude provedeno,
-
pokračuje se tedy příkazem "else".
-
Takže program zobrazí "a is not less than 0"
-
což udělal zde, potom zobrazil c-a
-
což je 630. Pokračuje pryč z tohoto příkazu
-
a bez ohledu na to, zda "a" je menší než 0 nebo ne,
-
zobrazuje "we are done with the program".