Python: rozsahy, uzávierky a dekorátory
Rozpleťte, ako Python nachádza názvy a udržuje stav naprieč volaniami s týmto zameraným kvízom na rozsahy, uzávierky a dekorátory. Prejdete si reálne vzory ako vnorené funkcie, použitie nonlocal/globa...
Spustiť Kvíz
Vyberte si obtiažnosť a počet otázok pre začiatok.
O tomto kvíze
Na čom budete cvičiť
Rozsahy, uzávierky a dekorátory sú miestami, kde sa môže zdanie "to jednoducho funguje" v Pythone náhle zdať jemné. Tento kvíz vám pomôže vybudovať spoľahlivý mentálny model pre riešenie názvov (LEGB), zachytené premenné a vzory obalovania funkcií.
Každá otázka používa 4 možnosti a nie je tu časovač, takže môžete starostlivo uvažovať o poradí vykonávania, väzbách a o tom, čo sa skutočne vyhodnocuje.
Obtiažnosť a nastavenie kvízu
Vyberte si, koľko otázok chcete zodpovedať pred začatím, a vyberte si ľahšiu alebo ťažšiu obtiažnosť, ak sa chcete zamerať na svoje cvičenie. Celková obtiažnosť je vyvážená kombinovaním rýchlych kontrol konceptov s položkami čítania kódu, ktoré si vyžadujú krok za krokom sledovanie.
Bežný prístup je začať s kratším behom na zmiešanej obtiažnosti, potom opakovať s vyššou obtiažnosťou, keď dokážete predpovedať výstupy bez hádania.
Bežné pasce, na ktoré si dajte pozor
- Zmätok medzi priradením a vyhľadávaním: akékoľvek priradenie vo funkcii môže urobiť názov lokálnym, pokiaľ nie je deklarovaný ako globálny/nonlocal
- Neskoré viazanie v uzávierkach (napr. lambdy v cykloch zachytávajúce tú istú premennú)
- Zabudnutie vrátiť vnútornú funkciu pri budovaní uzávierok
- Písanie dekorátorov, ktoré strácajú metadáta funkcie (chýbajúce functools.wraps)
- Nezrozumenie času vykonávania dekorátora: dekorácia sa deje pri importe/definícii, nie pri čase volania
Tipy na lepšie skóre
Keď zmeškáte otázku, prepíšte úryvok vo svojej hlave pomocou explicitných krokov: správanie pri definovaní vs správanie pri volaní, ktorý rozsah vlastní každý názov a ktorý objekt dekorátor vracia. Bez časovača a s 4 možnosťami na otázku, zaobchádzajte s každou položkou ako s mini-debuggingovou reláciou, nie ako s testom rýchlosti.
Ukážkové otázky
Aký je termín pre oblasť programu, kde je premenná prístupná?
- A.Rozsah
- B.Kontext
- C.Blok
- D.Oblasť
Ktoré kľúčové slovo sa používa na deklaráciu globálnej premennej v Pythone?
- A.global
- B.public
- C.private
- D.local
Aký typ funkcie vám umožňuje pripojiť správanie k existujúcej funkcii?
- A.Dekorátor
- B.Uzávierka
- C.Generátor
- D.Callback
FAQ kvízu
Koľko otázok je v tomto kvíze?
Tento kvíz má 128 otázok o Python rozsahoch, uzávierkach a dekorátoroch.
Je tento kvíz časovo obmedzený?
Nie. Nie je tu časovač, takže si môžete vziať čas na čítanie kódu a uvažovanie o rozsahu a väzbách.
Aký formát odpovedí používa kvíz?
Každá otázka je s výberom z viacerých možností s 4 možnosťami.
Môžem si vybrať počet otázok a obtiažnosť?
Áno. Pred začatím si vyberte počet otázok a vyberte úroveň obtiažnosti; Zmiešaná kombinuje ľahké, stredné a ťažšie položky.
Aké témy sú pokryté okrem základných pravidiel rozsahu?
Uvidíte vyhľadávanie LEGB, globálne/nonlocal, zachytenie uzávierok, neskoré viazanie, vzory dekorátorov a bežné chyby obalov.
Zahrajte si tento kvíz v inom jazyku(7)
Súvisiace kvízy

Rust: vlastníctvo, požičiavanie a životnosti
Prehlbte svoje porozumenie modelu vlastníctva v Rust, pravidlám požičiavania a anotáciám životnosti pomocou praktických otázok zameraných na kód. Prejdete si bežné chyby kompilátora, vyberiete najbezpečnejšie opravy a vybudujete si intuíciu o tom, ako myslí kontrolór požičiavania. Vyberte si preferovanú obtiažnosť a počet otázok, potom sa učte vlastným tempom bez časového obmedzenia.
JavaScript: promisy, async a event loop
Rozmotajte asynchrónne správanie JavaScriptu pomocou otázok o Promisách, async/await, mikroúlohách a event loop. Precvičíte si predpovedanie poradia vykonávania, odhaľovanie jemných časových chýb a výber správneho asynchrónneho vzoru pre skutočný kód. Vyberte si preferovaný počet otázok a obtiažnosť, potom sa učte vlastným tempom bez časového limitu.
Počítačové hardvérové komponenty a ich úlohy
Zlúčte kľúčové komponenty PC s tým, čo robia a ako ovplyvňujú výkon. Pokrýva CPU, GPU, RAM, typy úložiska, základné dosky, zdroje napájania a porty.
Modely služieb cloud computingu vysvetlené
Skontrolujte svoje porozumenie tomu, ako sú cloudové služby poskytované a používané. Pokrýva IaaS, PaaS, SaaS, kontajnery vs VM, regióny/availability zóny a základy zdieľanej zodpovednosti.
Kybernetické bezpečnostné hrozby a obrany
Identifikujte bežné kybernetické hrozby a najlepšie obranné praktiky používané na zníženie rizika. Pokrýva phishing, malware, heslá, MFA, základy šifrovania a bezpečné návyky pri prehliadaní.
Základy syntaxe programovacích jazykov
Otestujte si svoje znalosti bežnej syntaxe programovania naprieč populárnymi jazykmi. Otázky sa zameriavajú na premenné, cykly, funkcie a základné dátové štruktúry bez potreby hlbokých teórií informatiky.