Úvod do programování
Níže se budou postupně objevovat drobné aktuální zprávy z výuky (např. odkazy na další studijní materiály, příklady k procvičování apod.). Budou řazeny chronologicky od nejnovějších k nejstarším.
Školní rok 2020/2021 ...
Výuka se v tomto školním roce nekoná a zatím se bohužel nezdá, že situace se v nejbližší budoucnosti změní.
Školní rok 2019/2020
Vedení školy se z rozpočtových důvodů rozhodlo neotevřít výuku tohoto předmětu ani v tomto školním roce, přestože zájem žáků byl značný.
Školní rok 2018/2019
V tomto školním roce se nepovinný předmět Základy programování nekoná. Zájemci mohou vyčkat na příští školní rok.
6. června 2018
- kontrola úkolu - řazení časových intervalů razeni_casu.py
- seznamy - dokončení výkladu (seznamy seznamů)
- chyby a jejich zpracování - výjimky, chráněné bloky, vlastní výjimky
Náměty k samostatné činnosti:
- Stáhněte si soubor s daty o zisku medailí na posledních ZOH (každá položka seznamu je seznam tvořený názvem země, počtem zlatých, stříbrných a bronzových medailí). Vytiskněte tabulku zemí seřazenou:
- podle olympijského pořadí (tj. podle počtu zlatých medailí, v případě shody podle stříbrných a nakonec při shodě dle bronzových medailí),
- podle celkového počtu medailí.
- Napište funkci
vstup_intpro vstup celého čísla z klávesnice. Podobně jako funkciinputjí můžeme předat text s výzvou. Při neplatném zadání (např.5.17,AB18, prázdném vstupu) funkce vypíše upozornění o nesprávném vstupu a žádá nový vstup. Návratová hodnota je typuint.
30. května 2018
- Substituční šifry (dokončení)
- Vytvoření tabulky pro frekvenční analýzu f_analyza.py
- Řazení seznamů - metoda
sort, řazení českých řetězců, řazení podle vlastního kritéria, funkcesorted
Náměty k samostatné činnosti:
- Seřaďte v sestupném pořadí seznam časových intervalů:
['2.5 m', '5 h', '36.1 s', '15 s', '0.085 h', '0.15 m', '418 s']
9. května 2018
- náhodná čísla a histogram při házení kostkami kostky.py
- pokračování výkladu o seznamech - porovnávání seznamů, generátorová notace
- funkce
substitucepro náhradu znaků v řetězci a její použití na některé úlohy: odstranění diakritiky z českého textu, úvod do šifrování a Caesarova šifra
Náměty k samostatné činnosti:
- dokončení úlohy
kostky(tisk histogramu) - Rozšifrujte text
xgefuf fmwahq lbdmhk zqzu hgnqo anfulzq mzu nql baoufmoq
zašifrovaný pomocí Caesarovy šifry.
4. dubna 2018
- tisk Pascalova trojúhelníka pascal.py
- další operace se seznamy - úpravy seznamů, minimum, maximum a součet prvků
- procvičování seznamů - slučování neklesajících posloupností slouceni.py, otevírání/zavírání dveří na chodbě dvere.py
Náměty k samostatné činnosti:
- dokončete úlohy rozpracované ve škole
28. března 2018
řešení úlohy „ovladač“
def zapnout(stav, cislo): return stav | 1 << cislo def vypnout(stav, cislo): return stav & (1 << cislo) ^ 0b1111_1111 def prepnout(stav): return stav ^ 0b1111_1111 def stav_rele(stav): print(" stav relé: ", end = "") for bit in range(8): print(bit, "+" if stav & (1 << bit) else "-", sep = "", end = " ") print()
- připomenutí rozšířeného přiřazení
- seznamy jako další datový typ, základní vlastnosti na pozadí podobnosti s řetězci, možnosti konverze na řetězec a naopak
Náměty k samostatné činnosti:
- Tisk Pascalova trojúhelníka: Stáhněte si soubor pascal-zadani.py a doplňte funkci
pascal, která na základě jednoho řádku vytvoří řádek následující. Funkce přijímá jako parametr seznam položek typuint, její návratová hodnota je rovněž seznam celých čísel. Výsledný řádek vždy začíná prvkem1, následují položky tvořené jako součet dvou prvků vstupního řádku (pro i-tý prvek na indexech i-1 a i) a je zakončen opět prvkem1. Výstupní seznam je o jeden prvek delší než vstupní. Velmi jednoduchá sazba textu: Vaším úkolem je zformátovat zadaný text (typu
str) do řádků tak, aby nikdy nepřekročil určenou délku řádku. Stáhněte si soubor sazba-zadani.py a doplňte funkciodstavec. Vstupními parametry funkce jsou řetězectexta maximální povolená délka řádkulimit. Výstupem (tj. návratovou hodnotou funkce) je seznam řetězců, přičemž každý prvek reprezentuje jeden řádek. Slova jsou na řádcích zarovnána vlevo1) (tj. mezi nimi je právě jedna mezera), délka řádku je omezena limitem s výjimkou slov, která sama o sobě přesahují daný limit. Řešení testujte pro různé limity délky řádku.
Návod:
Vstupní text si rozdělte na seznam slov (řetězcová metodasplit). Slova pak procházejte a průběžně počítejte délku řádku (nezapomeňte na mezery). Tímto způsobem dostanete rozsah slov (určených pomocí indexů), která společně patří na řádek. Nyní zbývá vytvořit řetězec pro další řádek (řetězcová metodajoin) a přidat jej do seznamu řádků.Pokud vám předchozí úloha nepřišla příliš náročná, můžete zkusit své řešení ještě trochu vylepšit2). Cílem je nyní vytvořit řádky se zarovnáním „do bloku“, tj. i pravé strany řádků správně lícují (případně kromě posledního řádku) a řádky mají přesně stanovenou délku.
Návod:
Využijte již hotového kódu, změnit je potřeba pouze tu část, kdy z určeného rozsahu slov (ten zůstane stejný) tvoříme řádek. Mezi slova je potřeba vložit pokud možno nějak rovnoměrně mezery tak, abychom získali řetězec správné délky.
21. března 2018
- řešení úloh: tabulka součinů zadané velikosti nasobilka.py, výpis ASCII znaků v různých reprezentacích format.py
- další rysy jazyka - bitové operace, podmíněný výraz, rozšířené přiřazení
Náměty k samostatné činnosti:
- úloha „ovladač“ na procvičení bitových operací: stáhněte si soubor ovladac.py, naprogramujte 4 požadované funkce (bližší vysvětlení naleznete přímo v komentářích) a své řešení vyzkoušejte
14. března 2018
- formátování údajů pomocí řetězcové metody
format- dokončení výkladu a procvičování - výpis matice součinů zadané velikosti (viz příklad 1 níže)
Náměty k samostatné činnosti:
Dokončete úlohu na tisk tabulky součinů, kterou jsme začali při hodině, např. při volání funkce
nasobilka(5)by měl výstup vypadat taktoNásobilka do 5 | 1 2 3 4 5 ---+------------------------- 1 | 1 2 3 4 5 2 | 2 4 6 8 10 3 | 3 6 9 12 15 4 | 4 8 12 16 20 5 | 5 10 15 20 25
Vytiskněte tabulku ASCII znaků (v rozsahu kódů 32 až 127). Za hlavičkou bude následovat tisk znaků v různých reprezentacích (jeden znak na řádek). Řádek bude mít 2 až 5 sloupců, povinné jsou vyjádření v desítkové soustavě a znakové vyjádření, volitelné sloupce jsou vyjádření ve dvojkové, osmičkové a šesctnáctkové soustavě. Definice funkce začíná takto
def tabulka(bin = False, oct = False, hex = False):
parametry logického typu určují, zda se bude příslušný sloupec tisknout. Při volání
tabulka(bin = True, oct = True, hex = True)
vypadá začátek tabulky následovně
# bin oct hex ch --------------------------- 32 0010_0000 0040 20 33 0010_0001 0041 21 ! 34 0010_0010 0042 22 " 35 0010_0011 0043 23 # 36 0010_0100 0044 24 $
s parametry
tabulka(bin = True, oct = False, hex = False)
# bin ch ----------------- 32 0010_0000 33 0010_0001 ! 34 0010_0010 " 35 0010_0011 # 36 0010_0100 $
14. února 2018
- řešení příkladů - počítání slov, obrácení pořadí slov ve větě retezce2.py
- výpis tabulky ASCII znaků
- formátování údajů pomocí řetězcové metody
format
7. února 2018
- řešení úloh: zarovnání řetězců, převod délkové míry s jednotkou
- práce s řetězci - samostatné řešení příkladů (počet výskytů podřetězce bez ohledu na velikost písmen, nalezení pozice některého ze zadaných znaků) retezce1.py
Náměty k samostatné činnosti:
Napište funkci, která určí počet slov v textu (za „slovo“ budeme považovat skupinu znaků jiných než oddělovač).
def pocet_slov(text): """ počet slov v textu text: řetězec, ve kterém se počítají slova (slova jsou skupiny znaků bez oddělovačů (' ', '\t', '\n') návratová hodnota: int - počet slov """ pass
Napište funkci pro obrácení pořadí slov ve větě (budeme předpokládat, že slova jsou skupiny znaků oddělených mezerami).
def obracena_veta(veta): """ obrácení pořadí slov ve větě veta: řetězec, za slova pokládáme části oddělené mezerami návratová hodnota: řetězec, slova v opačném pořadí, oddělení mezerami zachováno """ pass
Pozn.: Je možná překvapivé, že opravdu důkladné vymezení pojmu „slovo“ není úplně snadné (máme-li vzít v úvahu i sousloví oddělená pomlčkou, rozdělená slova na konci řádku, zkrácená slova pomocí apostrofu v angličtině apod.).
31. ledna 2018
- datový typ řetězec - dokončení a opakování
Náměty k samostatné činnosti:
Napište funkci, která zarovná řetězec na požadovanou délku (>= 6): kratší řetězce doplňte zprava mezerami, delší řetězce zkraťte a zakončete pomocí tří teček a posledních dvou znaků původního řetězce (např. zkrácením
"dlouhý řetězec z několika slov"na 10 znaků získáme"dlouh...ov").def zarovnani(text, delka): """ zarovnání řetězce text: řetězec k zarovnání delka: požadovaná délka (alespoň 6) návratová hodnota: řetezec délky 'delka' je-li 'text' kratší => doplněn zprava mezerami je-li 'text' delší => zkrácen + '...' + poslední 2 znaky """ pass
Napište funkci pro převod délkových údajů na
floats uvažováním jednotky (např. pro řetězec"2.1 mm"je výsledek0.0021).def prevod_delky(delka): """ převod řetězce s délkou (hodnota + jednotka) na float delka: řetězec (číslo, mezera, jednotka), např. '5.6 cm' povolené jednotky - mm, cm, dm, m, km návratová hodnota: float - délka v metrech pro nesprávně formátovaný vstup dojde k chybě nebo je vráceno None """ pass
24. ledna 2018
- funkce pro ověření platnosti data a výpočtu týdne v roce pro dané datum kalendar3.py
- datový typ řetězec - podřetězce, kódování znaků a řazení řetezců, metody řetězcových objektů (1. část)
Nové Mersennovo prvočíslo
Dne 3. ledna 2018 bylo ohlášeno nalezení již 50. Mersennova prvočísla 277 232 917 − 1 s více než 23 milióny číslic, které se tak stalo největším známým prvočíslem. Více podrobností viz tisková zpráva.
3. ledna 2018
- tisk kalendáře - rozbor řešení
- doporučené postupy při práci na větších projektech
Náměty k samostatné práci:
Rozšiřte modul kalendářních funkcí o dvě nové funkce:
def platne_datum(den, mesic, rok): """ ověří platnost data ověří se, že zadané datum je podle gregoriánského kalendáře platné (zjednodušeně uvažuje rok >= 1600) návratová hodnota: bool """ pass def tyden_roku(den, mesic, rok): """ tyden roku pro zadaný den určí týden roku, do kterého patří zadaný den dle ISO 8601 (1. týden obsahuje 4. leden resp. první čtvrtek roku) návratová hodnota: int - číslo týdne (0 pro poslední týden loňského roku) """ pass
Samozřejmě můžete využít (je to přímo doporučeno) již hotových funkcí v modulu. Pro testování druhé funkce můžete použít následující kousek kódu jako hlavní program modulu.
if __name__ == "__main__": for rok in range(2015, 2025): tisk_kalendare(1, rok) print("1.1.", rok, " t", tyden_roku(1, 1, rok), sep = "") print("4.1.", rok, " t", tyden_roku(4, 1, rok), sep = "") print("10.1.", rok, " t", tyden_roku(10, 1, rok), sep = "") print("15.1.", rok, " t", tyden_roku(15, 1, rok), sep = "") print("31.1.", rok, " t", tyden_roku(31, 1, rok), sep = "")
S jeho pomocí máte před sebou všechny možné situace na začátku roku a můžete tak ověřit správné výsledky své funkce
tyden_roku.
20. prosince 2017
- určení dne v týdnu pro dané datum den_tydne.py
- vytváření vlastních funkcí - opakování
- samostatné řešení složitější úlohy: tisk kalendáře
Náměty k samostatné práci:
- Pokuste se dokončit úlohu na tisk kalendáře, pokud jste tak ve škole nestihli.
Přeji vám radostné a pohodové prožití Vánoc a ať se vám v roce 2018 všechno daří dle představ!
13. prosince 2017
- výpočet podílu s vysokou přesností metodou „písemného dělení“ deleni.py
- vytváření vlastních funkcí
- procvičování: tisk siluety vánočního stromečku stromecek.py, určení přestupného roku prestupny_rok.py
Náměty k samostatné práci:
- Napište funkci, která pro zadané datum (tj. den, měsíc a rok) vrátí den v týdnu jako řetězec (např.
"pondělí"). Využijte k tomu funkcijul_datumz ukázkového programujulian.py(viz dnešní výklad). Správnou funkci ověřte v jednoduchém programu, např. pro aktuální den, den vašeho narození apod.
6. prosince 2017
- opakování - funkce, parametry a návratové hodnoty
- příklady - součet čtverců soucet_ctvercu.py, čtverec dělitelů ctverec_delitelu.py
- vestavěné funkce, moduly, modul
math - řešení příkladů - celočíselná posloupnost posloupnost.py, tabulka výrazu s goniometrickými funkcemi tabulka_funkce.py
Náměty k samostatné práci:
- Dokončete program na vytvoření tabulky goniometrického výrazu, pokud jste tak nestihli učinit v hodině.
- Napište program, který vyčíslí zlomek (zadaný pomocí celočíselného čitatele a jmenovatele) na určený počet (např. 50) desetinných míst. Jednotlivé číslice za desetinnou čárkou počítejte jako při písemném dělení. Pokud je číselný rozvoj neukončený, doplňte za poslední číslici symbol
+.
29. listopadu 2017
- opakování funkce range a cyklus for
- řešení příkladů: rozklad čísla na součet tří členů, výpočet faktoriálu faktorial2.py, hádanka hadanka3c3m.py
- funkce - základní principy, parametry a návratové hodnoty, poziční a pojmenované parametry
- jednoduché příklady na procvičení nových možností funkce
print
Náměty k samostatné práci:
- Napište program, který pro n od 1 do určeného limitu (např. 15) vypíše po řádcích součty druhých mocnin od 1 do n v určeném formátu, např. pro n = 4 řádek
4: 1^2 + 2^2 + 3^2 + 4^2 = 30.
15.listopadu 2017
- dokonalá čísla - rozšíření oboru hledání pomocí Mersennových prvočísel dokonala_cisla2.py
- Mersennova prvočísla - využití Lucas-Lehmerova testu
- poznámka k celočíselnému datovému typu
Náměty k samostatné práci:
- dokončete program na generování všech možných rozkladů kladného čísla započatý v hodině
- přepište program na výpočet faktoriálu s využitím cyklu
for
8. listopadu 2017
- dokonalá čísla - součet všech dělitelů, hledání v rozsahu do 100 000, vztah k Mersennovým prvočíslům
- zkoumání Mersennových prvočísel přímým hledáním dělitelů
- závěrečný blok
elseu příkazu cykluwhile- popis zde, demonstrační příklad hledani_cislice.py a porovnání řešení s verzí bez této konstrukce hledani_cislice_2.py
Náměty k samostatné práci:
- Rozšiřte program
mersenne2.py(viz výklad) tak, aby kromě nalezených prvočísel vypsal také odpovídající dokonalá čísla a jejich ciferaci (viz již dříve probíraná úloha soucet_cislic_2.py z 11. října).
1. listopadu 2017
- výpočet π pomocí tzv. BBP vzorce pi_bbp.py
- výpočty matematických konstant s vysokou přesností: e na 1000 desetinných míst euler_presneji.py (po sečtení 452 členů je odchylka od přesné hodnoty na stejný počet cifer 1,0.10-999), π na 200 desetinných míst pi_presneji.py (po sečtení 661 členů je odchylka od přesné hodnoty na stejný počet cifer 2,6.10-199)
- zjišťování prvočíselnosti přímým hledáním dělitelů, postupné zrychlování algoritmu, odhad časové složitosti
Náměty k samostatné práci:
- Číslo ve tvaru 2n - 1 pro přirozené n nazveme Mersennovým číslem Mn. Zkontrolujte programem, která Mersennova čísla v rozsahu n od 2 do 40 jsou prvočísla.
Pro přirozené číslo n vytvoříme součet všech jeho dělitelů (včetně 1 a čísla samotného) a označíme jej Sn.
♦ Pro většinu čísel je Sn < 2n, např. pro 9: 1 + 3 + 9 = 13 < 2.9,
♦ méně často platí Sn > 2n, např. pro 24: 1 + 2 + 3 + 4 + 6 + 8 + 12 + 24 = 60 > 2.24
♦ a jen výjimečně nastává Sn = 2n, např. pro 28: 1 + 2 + 4 + 7 + 14 + 28 = 56 = 2.28.
Budeme hledat tzv. dokonalá čísla (tj. ta, pro která platí rovnost). V prvním kroku napište program, který pro zadané číslo nalezne součet jeho dělitelů (snažte se přitom vhodně inspirovat úvahami, které jsme prováděli v hodině při hledání prvočísel). Po jeho odladění jej rozšiřte tak, aby v rozsahu od 2 do 100 hledal čísla, pro která platí Sn = 2n. Bude-li dostatečně rychlý, zkuste rozšířit obor hledání postupně až do 100 000.
25. října 2017
- statistika souboru zadaných čísel statistika.py
- dokončení tématu výpočet odmocniny Newtonovou metodou - zlepšení počátečního odhadu, porovnání a rozbor
- výpočet matematických konstant e a π součtem číselných řad
Náměty k samostatné práci:
- Vypočtěte π částečným součtem řady dle tzv. BBP vzorce3) a porovnejte rychlost konvergence s výpočtem z hodiny (
cislo_pi.py). Upravte programy
euler.pyacislo_pi.pyz hodiny tak, aby počítaly výsledky s přesností na mnoho destinných míst.
Návod:
Datový typfloatnemá dostatečnou přesnost, využijte tedy vhodně typint. Při požadované přesnosti např. 100 desetinných míst počítejte 10100.e v celočíselné aritmetice a až v závěrečném tisku zobrazte výsledek jako desetinné číslo (stejně tak pro π). Výsledky pro e na 1000 desetinných míst si můžete porovnat se správnou hodnotou euler.txt, stejně tak pro π na 200 desetinných míst pi.txt.
18. října 2017
- Collatzovy posloupnosti, nejdelší posloupnost s počátkem v daném rozsahu collatz3.py
- výpočet druhé odmocniny Newtonovou metodou
- další vlastnosti datového typu
float - Newtonova metoda pro vyšší řády odmocnin odmocnina_n.py
Náměty k samostatné práci:
- Upřesnění počátečního odhadu x0 v Newtonově metodě: Vytvořte program, který na základě zadané
floathodnotyanastaví proměnnoux0takto - v intervalu 0.1 až 10.0 na 1.0, v intervalu 10.0 až 1_000.0 na 10.0, pro 1_000.0 až 100_000.0 na 100.0 atd. pro větší čísla a v intervalu 0.001 až 0.1 na 0.1, v intervalu 0.000_01 až 0.001 na 0.01 atd. pro menší kladná čísla. Tj. odhad se mění o jeden řád při změně mezí vstupní hodnoty o dva řády. Hraniční body zpracujte dle svého uvážení. - Rozšiřte program
prumer.py(viz výklad cyklů) tak, aby kromě počtu zadaných hodnot a aritmetického průměru nalezl také maximální a minimální hodnotu a vypočetl směrodatnou odchylku (dle posledního vzorce na stránce o statistice). Ošetřete prázdný soubor vstupních dat a situaci s jednou zadanou hodnotou. Nápověda: můžete s výhodou využít nově probraných vlastností typu float pro inicializaci proměnných.
11. října 2017
- výpočet faktoriálu přirozeného čísla faktorial.py
- součet číslic zadaného čísla soucet_cislic.py, prováděný opakovaně i na mezisoučty soucet_cislic_2.py (tento postup se někdy nazývá ciferace)
- vytvoření čísla s obráceným pořadím číslic obraceni.py
- nalezení největší mocniny 2, která není větší než zadané číslo mocniny.py
- studium Collatzových posloupností - vytvoření posloupnosti pro zadaný počátek collatz1.py, nalezení maxima posloupnosti
Náměty k samostatné práci:
- Collatzovy posloupnosti - dokončete rozpracovaný program z hodiny: vypište tabulku, kde každý řádek bude obsahovat počátek posloupnosti, její délku a maximum. Rozsah tabulky je od 1 do zadaného maxima.
- Upravte předchozí program tak, aby v rozmezí od 1 do zadaného maxima nalezl nejdelší posloupnost. Vypište její počátek, délku a maximum. Jeho pomocí najděte nejdelší posloupnosti s počátkem do 100, 1 000 a 10 000.
4. října 2017
- nalezení nejmenší a největší hodnoty z tří zadaných čísel min_max_3.py
- řešení kvadratické rovnice kvadraticka.py
- cyklus
while - předčasné ukončení cyklu příkazem
break
Shrnutí nového učiva je ve druhé části stránky.
Náměty k samostatné práci:
- program pro výpočet faktoriálu zadaného přirozeného čísla4)
- zjištění součtu všech číslic zadaného nezáporného celého čísla, např. pro číslo 176 je výsledek 1 + 7 + 6 = 14, malou nápovědu si případně můžete zobrazit vybráním textu v rámečku: pro oddělení jednotlivých číslic využijte celočíselné aritmetiky - operátorů dělení a zbytku po dělení.
5) Doplňte předchozí program tak, aby pro výsledný součet znovu spočítal součet jeho číslic, je-li součet sám víceciferný (tj. 10 nebo větší). To opakujte tak dlouho, než je výsledek jednociferný. Např. pro 174 dostaneme v prvním kroku 14, opět provedeme součet číslic s výsledkem 5 a končíme. Pro větší čísla ale může být potřeba učinit dva nebo i více mezikroků (jako u 1 999 999 999 999 999 → 136 → 10 → 1).
27. září 2017
- opakování na příkladech: prohození hodnot prohozeni.py, převod hodin na dny, hodiny a minuty prevod_na_dhm.py, zaokrouhlování čísel zaokrouhlovani.py
- datový typ
boola logické výrazy - různé varianty podmíněného příkazu
Probrané učivo je vysvětleno v první části článku Větvení a cykly.
Náměty k samostatné práci:
- Vytvořte nástroj k řešení kvadratických rovnic v reálném oboru (na základě zadaných keoficientů a, b, c vypište řešení a jeho typ6), případně můžete ošetřit i krajní případy jako a = 0 apod.).
- Pro tři zadaná celá čísla vypište hodnotu nejmenšího a největšího z nich, případně oznamte, že jsou všechna shodná.
13. září 2017
- základní pravidla syntaxe
- datové typy
int,floata početní operace s nimi - proměnná a přiřazovací příkaz
- příkaz textového vstupu a výstupu
K zopakování probraných témat můžete použít tento materiál.
Náměty k samostatné práci:
- Napište program, který přečte dvě zadané hodnoty (např. řetězce), vytiskne je, následně hodnoty v proměnných prohodí a opět je vytiskne.
- Napište program, který přečte dobu trvání nějaké činnosti (v hodinách jako
float) a následně vytiskne přepočet této hodnoty na celé dny, celé hodiny a (případně necelé) minuty. - Zamyslete se, jakým způsobem by se dala nezáporná proměnná typu
floatzaokrouhlit (tj. ne jen useknout desetinnou část) na celé číslo. A co zaokrouhlení na 2 desetinná místa?
6. září 2017
- vysvětlení cílů předmětu
- základní pojmy - počítač a jeho hlavní části, algoritmus a program, programovací jazyky, překladač a interpretr
- konzolové programy vs. programy s grafickým rozhraním (i v Pythonu lze vytvářet programy s grafickým rozhraním, jak např. hezky demonstruje Pavel Tišnovský svým seriálem Grafické uživatelské rozhraní v Pythonu na serveru www.root.cz)
- první seznámení s vývojovým prostředím IDLE - interaktivní režim, spuštění testovacího programu
Poznámka: Při instalaci prostředí Python na OS Windows dle našeho postupu dojde mj. k přiřazení přípony .py k interpretru Pythonu, takže je možné „přímé spuštění“ zdrojového kódu (poklepáním myší z grafického prostředí či vypsáním jména z příkazového řádku). V prostředí GNU/Linuxu stejného efektu dosáhneme takto. Na první řádek zdrojového souboru (uvažujeme test.py) vložíme odkaz na interpretr7) #!/usr/bin/env python38)
a po nastavení spustitelného příznaku9)
již můžeme program přímo spustit pomocí ./test.py nebo z GUI10). V případě obou OS dojde k automatickému spuštění interpretru, který ihned začne vykonávat kód předaného programu.
Instalace Pythonu
Jednoduché vývojové prostředí jazyka Python na počítače s operačním systémem Windows si můžete nainstalovat podle tohoto návodu (prakticky stejně je nainstalován Python 3 ve školní učebně výpočetní techniky).
2. září 2017
Vítejte
Jsem ráda, že se setkáváme při výuce základů programování. Předpokládám, že o předmět máte zájem, a já se budu snažit, aby výuka byla prakticky orientovaná a co nejzajímavější. Dobře si uvědomuji, že jde o nepovinný předmět, proto budeme tempo výuky a částečně i obsah korigovat dle vašich možností a požadavků.
1. září 2017
vim, nano, grafický gedit či jiný váš oblíbený#!/usr/bin/python3 u distribucí jako Debian, Ubuntu apod. či #/bin/python3 u těch založených na RedHat (CentOS, Fedora) chmod u+x test.pypython3 test.py z příkazové řádky