diff --git a/lessons/beginners/dict/index.md b/lessons/beginners/dict/index.md index b875e373..cec5855f 100644 --- a/lessons/beginners/dict/index.md +++ b/lessons/beginners/dict/index.md @@ -212,7 +212,7 @@ print(popisy_funkci['len']) ### Zaplň prázdný slovník -Nejobecnější způsob vytváření slovníků je podobný tomu co znáš u seznamů: +Nejobecnější způsob vytváření slovníků je podobný tomu, co znáš u seznamů: vytvoř prázdný slovník a postupně do něj přidávej záznamy, jeden za druhým. Řekněme, že máš slovník, který přiřazuje ovoci jeho barvu: @@ -257,7 +257,7 @@ jmena_cisel = {2: 'dva', 3: 'tři'} ``` Ale seznamy nebo jiné slovníky ne. -Typy které se dají použít jako klíč ve slovníku se technicky označují jako +Typy, které se dají použít jako klíč ve slovníku, se technicky označují jako „*hashovatelné*“ (angl. *hashable*). Tento termín se objevuje v chybových hláškách: @@ -291,5 +291,5 @@ pěkně pohromadě, můžeš si stáhnout [Slovníkový tahák](https://pyvec.github.io/cheatsheets/dicts/dicts-cs.pdf). Kompletní popis slovníků najdeš -v [dokumentaci](https://docs.python.org/3.0/library/stdtypes.html#mapping-types-dict) +v [dokumentaci](https://docs.python.org/3/library/stdtypes.html#mapping-types-dict) Pythonu. diff --git a/lessons/beginners/inheritance/index.md b/lessons/beginners/inheritance/index.md index 6658d324..24734965 100644 --- a/lessons/beginners/inheritance/index.md +++ b/lessons/beginners/inheritance/index.md @@ -1,7 +1,7 @@ # Dědičnost -Minule jsme probrali třídy. -Jako příklad jsme si ukázali třídu pro koťátka: +Minule jsme probral{{gnd('i', 'y', both='i')}} třídy. +Jako příklad jsme si ukázal{{gnd('i', 'y', both='i')}} třídu pro koťátka: ```python class Kotatko: @@ -196,7 +196,7 @@ kdekoliv kde program očekává `Zviratko`, protože každé koťátko *je* zvířátko. > [note] -> Tohle je docela dobrá pomůcka pro případy, kdy nebudeš vědět +> Tohle je docela dobrá pomůcka pro případy, kdy nebudeš vědět, > kterou třídu podědit z které. > Každé *koťátko* nebo *štěňátko* > je *zvířátko*, každá *chata* @@ -260,7 +260,7 @@ for zviratko in zviratka: zviratko.snez('flákota') ``` -Jak tenhle příklad naznačuje, psát nadtřídy ze kterých se dobře dědí +Jak tenhle příklad naznačuje, psát nadtřídy, ze kterých se dobře dědí, není jednoduché. Zvlášť to platí, kdyby se z nich mělo dědit v jiném programu, než kde je nadtřída. I z toho důvodu je dobré dědičnost používat hlavně v rámci svého kódu: diff --git a/lessons/beginners/interfaces/index.md b/lessons/beginners/interfaces/index.md index 10102b65..f1bed500 100644 --- a/lessons/beginners/interfaces/index.md +++ b/lessons/beginners/interfaces/index.md @@ -1,11 +1,11 @@ # Rozhraní -Už víš že funkce ti umožňují kousek kódu: +Už víš, že funkce ti umožňují kousek kódu: * použít (zavolat) na více místech v programu, i když definice je jen jedna, * vyčlenit, aby detail (jako načtení čísla od uživatele) „nezavazel“ ve větším programu, který tak může být přehlednější, a -* pojmenovat, aby bylo jasné co kód dělá i bez toho, abys musel{{a}} číst +* pojmenovat, aby bylo jasné, co kód dělá, i bez toho, abys musel{{a}} číst samotné tělo funkce. Další výhoda funkce je, že ji můžeš jednoduše vyměnit za jinou, @@ -16,10 +16,10 @@ zásuvku ve zdi. Do takové zásuvky můžeš zapojit počítač, lampu, nabíječku na mobil, vysavač, nebo rádio. Zásuvka poskytuje elektrický proud; je jedno, jak ho použiješ. -Stejně tak je jedno jestli je „druhý konec“ zásuvky připojený k solárnímu +Stejně tak je jedno, jestli je „druhý konec“ zásuvky připojený k solárnímu panelu nebo k atomové elektrárně. Zásuvka poskytuje elektrický proud, a jsou u ní důležité určité parametry -(tvar, napětí, frekvence, maximální proud) na kterých se obě strany, +(tvar, napětí, frekvence, maximální proud), na kterých se obě strany, poskytovatel proudu i spotřebič, shodly. Tyhle parametry tvoří *rozhraní*, které umožňuje připojit jakýkoli spotřebič k jakékoli elektrárně. @@ -39,7 +39,7 @@ def ano_nebo_ne(otazka): Podobnou funkci už jsi napsal{{a}}. Když zavoláš `ano_nebo_ne('Chutná ti čokoláda?')`, otázka se objeví na příkazové řádce. -Když uživatel odpoví, funkce vrátí True nebo False. +Když uživatel odpoví, funkce vrátí `True` nebo `False`. Co kdybys ale měl{{a}} následující funkci? @@ -54,9 +54,9 @@ def ano_nebo_ne(otazka): Když zavoláš tuhle funkci, `ano_nebo_ne('Chutná ti čokoláda?')`, ukáže se okýnko se dvěma tlačítky. -Když uživatel jedno zmáčkne, funkce vrátí True nebo False. +Když uživatel jedno zmáčkne, funkce vrátí `True` nebo `False`. -Z hlediska programu se nic nemění: jediné co se změní je *definice funkce*; +Z hlediska programu se nic nemění: jediné, co se změní, je *definice funkce*; volání a práce s návratovou hodnotou je pak stejné jako dřív. @@ -87,7 +87,7 @@ vyndej, aby se použily ty naimportované. Program by měl fungovat stejně jako dřív! Je to tím, že tyto funkce mají stejné *rozhraní* jako jejich dřívější protějšky. -Rozhraní funkce tvoří všechno, co potřebuje kód který funkce volá: +Rozhraní funkce tvoří všechno, co potřebuje kód, který funkce volá: * jméno, kterým se funkce volá, * argumenty, které bere (např. `input` bere otázku jako řetězec; `print` @@ -103,5 +103,5 @@ použít, věděl jak na to. > [note] > Modul `tkui` je jen ilustrační. Je udělaný tak, aby se dobře “instaloval” > spíš než aby ti pomohl psát reálné programy. -> V tomto kurzu se vrátíme zpět k příkazové řádce, která je dělaná tak +> V tomto kurzu se vrátíme zpět k příkazové řádce, která je dělaná tak, > aby byla užitečná pro programátory. diff --git a/lessons/beginners/list/index.md b/lessons/beginners/list/index.md index d378d95e..85ec1378 100644 --- a/lessons/beginners/list/index.md +++ b/lessons/beginners/list/index.md @@ -401,7 +401,7 @@ for cislo in range(10): print(mocniny_dvou) ``` -Podobným způsobem získáš seznam seznam `matka`, `babička`, `prababička`, +Podobným způsobem získáš seznam `matka`, `babička`, `prababička`, `praprababička`, atd.: ```python diff --git a/lessons/beginners/range/index.md b/lessons/beginners/range/index.md index 53b52e3b..c3e4617f 100644 --- a/lessons/beginners/range/index.md +++ b/lessons/beginners/range/index.md @@ -61,7 +61,7 @@ Python vyhodí výjimku `MemoryError`. > U trochu menšího čísla (např. `1000000000`, ale na každém počítači je to > jinak) se může stát, že se Python pokusí seznam začít tvořit, zaplní přitom > většinu dostupné paměti a počítač „zamrzne“. -> V závislosti na systému se pak třeba může stát že reakce na +> V závislosti na systému se pak třeba může stát, že reakce na > Ctrl+C bude trvat hodně dlouho. Se samotným `range(1000000000000000)` ale není problém. diff --git a/lessons/beginners/testing/index.md b/lessons/beginners/testing/index.md index 49337b5d..8d19caa6 100644 --- a/lessons/beginners/testing/index.md +++ b/lessons/beginners/testing/index.md @@ -1,8 +1,8 @@ # Testování -Programátorská práce nespočívá jen v tom, program napsat. +Programátorská práce nespočívá jen v tom program napsat. Důležité je si i ověřit, že opravdu funguje, a případně ho pak opravit. -Tomu ověřování že program funguje se říká *testování* (angl. *testing*). +Tomu ověřování, že program funguje, se říká *testování* (angl. *testing*). Zatím jsi asi svoje programy testoval{{a}} tak, že jsi je zkusil{{a}} spustit, něco zadal{{a}} a podíval{{a}} se, @@ -18,14 +18,14 @@ Píšou jiné programy, které jejich výtvory testují za ně. zkontrolují, že program funguje správně. Spuštěním testů můžeš kdykoli ověřit, že kód funguje. Když v otestovaném kódu v budoucnu uděláš nějakou změnu, -testy ověří, že jsi nerozbil{{a}} nic co dříve fungovalo. +testy ověří, že jsi nerozbil{{a}} nic, co dříve fungovalo. ## Instalace knihovny pytest Zatím jsme v kurzu pracovali s tím, co se instaluje se samotným Pythonem – s moduly jako `math` a `turtle`. -Kromě takových modulů ale existuje ale velká spousta +Kromě takových modulů ale existuje velká spousta dalších *knihoven*, které nejsou přímo v Pythonu, ale dají se doinstalovat a používat. @@ -54,8 +54,8 @@ Potom zadej následující příkaz. > už při instalaci můžou něco pokazit. > Dej si proto pozor a ve jménu `pytest` neudělej překlep! > -> Nainstaluješ-li přesto omylem něco cos nechtěl{{a}}, dej co nejdřív vědět -> zkušenějšímu programátorovi, aby zkontroloval jaký to mohlo mít efekt. +> Nainstaluješ-li přesto omylem něco, cos nechtěl{{a}}, dej co nejdřív vědět +> zkušenějšímu programátorovi, aby zkontroloval, jaký to mohlo mít efekt. ```console (venv)$ python -m pip install pytest @@ -86,7 +86,7 @@ Potom zadej následující příkaz. Nejdříve si testování ukážeme na jednoduchém příkladu. Tady je funkce `secti`, která umí sečíst -dvě čísla, a další funkce, která testuje jestli se +dvě čísla, a další funkce, která testuje, jestli se `secti` pro určité hodnoty chová správně. Kód si opiš do souboru `test_secteni.py` v novém prázdném adresáři. @@ -159,7 +159,7 @@ usnadnit nalezení a opravu chyby. > lze též uvést adresář: `pytest` vyhledá testy v něm. Zkus si změnit funkci `secti` (nebo její test) a podívat se, -jak to vypadá když test „neprojde“. +jak to vypadá, když test „neprojde“. ## Testovací moduly @@ -170,7 +170,7 @@ Je to tak přehlednější a taky to pak zjednodušuje *distribuci* – předání kódu někomu, kdo ho chce jen spustit a testy nepotřebuje. -Rozděl soubor s testem sečítání: funkci `secti` přesuň do modulu `secteni.py`, +Rozděl soubor s testem sečítání: funkci `secti` přesuň do modulu `secteni.py` a v `test_secteni.py` nech jenom test. Do `test_secteni.py` pak na začátek přidej `from secteni import secti`, aby byla funkce testu k dispozici. diff --git a/lessons/beginners/tuple/index.md b/lessons/beginners/tuple/index.md index 0d34379b..1a8812ce 100644 --- a/lessons/beginners/tuple/index.md +++ b/lessons/beginners/tuple/index.md @@ -3,7 +3,7 @@ Když už známe seznam, podívejme se na jeho sestřičku: takzvanou n-tici (angl. *tuple*). -N-tice může, podobně jako seznam, obsahovat n prvků. +N-tice může, podobně jako seznam, obsahovat n prvků. N-tice se dvěma prvky je *dvojice* neboli *pár* (angl. *pair*); se třemi prvky *trojice* (angl. *3-tuple*), @@ -143,7 +143,7 @@ seznam lidí aktuálně sledujících video může být občas prázdný. Seznamy i n-tice mají i technické limity: n-tice nejdou měnit a až se naučíš pracovat se slovníky, -zjistíš že seznamy tam nepůjdou použít jako klíče. +zjistíš, že seznamy tam nepůjdou použít jako klíče. V takových případech je potřeba použít ten druhý typ sekvence. Často není úplně jasné, který typ použít. diff --git a/lessons/beginners/with/index.md b/lessons/beginners/with/index.md index 1f3e26fe..18de077f 100644 --- a/lessons/beginners/with/index.md +++ b/lessons/beginners/with/index.md @@ -52,7 +52,7 @@ print(nacti_cele_cislo('cislo.txt') * 11) Chování příkazu `with` závisí na objektu, se kterým jej použiješ. Pro soubor – výsledek funkce `open` – se soubor na konci bloku zavře. -Podobných „samozavíracích“ objektů které se dají použít s `with` existuje +Podobných „samozavíracích“ objektů, které se dají použít s `with`, existuje v různých knihovnách víc. Typické jsou objekty, které se starají o připojení např. k jinému počítači nebo k databázi, kdy je po práci dobré spojení ukončit a „uklidit po sobě“. diff --git a/lessons/beginners/zip-enumerate/index.md b/lessons/beginners/zip-enumerate/index.md index 2a0549d9..0fa5fb39 100644 --- a/lessons/beginners/zip-enumerate/index.md +++ b/lessons/beginners/zip-enumerate/index.md @@ -26,7 +26,7 @@ Oba jsou sekvence vytvořené z jiných, jednodušších sekvencí. Funkce `enumerate` vezme nějakou existující sekvenci a *očísluje ji*: ve vrácené sekvenci budou dvojice (index, původní hodnota). -Řekněme že máš tento seznam: +Řekněme, že máš tento seznam: ```python trpaslici = ['Prófa', 'Stydlín', 'Dřímal', 'Kejchal', 'Štístko', @@ -170,7 +170,7 @@ for index, den in enumerate(dny, start=1): Další iterátor n-tic je funkce `zip`, která umí projít dvě sekvence naráz. -Řekněme že máš seznam věcí a druhý seznam, ve kterém jsou barvy těch věcí: +Řekněme, že máš seznam věcí a druhý seznam, ve kterém jsou barvy těch věcí: ```python veci = ['tráva', 'slunce', 'mrkev', 'list'] @@ -231,7 +231,7 @@ for vec, barva in zip(veci, barvy): ``` {% filter solution %} -Iterátor `zip` skončí hned když dojdou prvky nejkratší sekvence. +Iterátor `zip` skončí hned, když dojdou prvky nejkratší sekvence. {% endfilter %} Občas je potřeba projít všechny záznamy. diff --git a/lessons/intro/json/index.md b/lessons/intro/json/index.md index 01cd8703..d6465066 100644 --- a/lessons/intro/json/index.md +++ b/lessons/intro/json/index.md @@ -235,9 +235,9 @@ se často používají formáty [TOML] nebo [YAML]. ### TOML -Knihovnu pro TOML potřeba si nainstalovat. +Knihovnu pro TOML je potřeba si nainstalovat. Dělá se to příkazem, který znáš z instalace knihovny Pytest. -Pozor ve jméně `toml` neudělej překlep, jinak nainstaluješ něco jiného +Pozor, ve jméně `toml` neudělej překlep, jinak nainstaluješ něco jiného (a možná nebezpečného!): ```console