NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!

Diskuze – Lekce 18 - Funkce a výjimky v Pythonu

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Karel Zaoral
Člen
Avatar
Karel Zaoral:14.7.2023 1:23

Ahoj, jednoduše:

try:
    # kód, který může vyvolat výjimku
except Exception as e:
    print("Došlo k výjimce: ", str(e))

V tomto případě klíčové slovo Exception zachytává všechny výjimky, které mohou být vyvolány v bloku try. A as e pak umožňuje přistupovat k zachycené výjimce.

Obecně dobrá praxe je ale zachytávat pouze specifické výjimky, které očekáváš, protože to může pomoci při ladění kódu a zabraňuje tomu, aby se některé vážné chyby ztratily. Zachycování všech výjimek by mělo být použito s opatrností, není to dobrá praktika.

 
Odpovědět
14.7.2023 1:23
Avatar
Pavel Kohl
Člen
Avatar
Pavel Kohl:20.7.2023 8:20

Docela mě překvapilo použití funkce

def nacti_cislo(text_zadani):
        cislo = float(input(text_zadani))
        return cislo
cislo_operace = nacti_cislo("Zadej volbu: ", "Neplatné zadání!\n")

kde číslo operace pracuje s celými čísly. Ono to přechroupe jako int? Dost možná by se z toho mohl stát nekonečný cyklus demotivující uživatele, pokud zadá 1, ale program z toho udělá 1.0 a pak mu skočí, že musí zadat číslo. Nebylo by lepší to ošetřit ještě jinou funkcí přímo u vstupu?

Jinak co dělá funkce dalsi_priklad()? Podle názvu bych čekal, že zadání dalšího příkladu ne ukázku jiné funkce.

 
Odpovědět
20.7.2023 8:20
Avatar
Pavel Kohl
Člen
Avatar
Pavel Kohl:20.7.2023 8:28

Funkce nacti_cislo() vrací float, ale pracuje se s ní v proměnné cislo_operace, která pracuje s int. Možná trochu komplikované si dané funkce a vstupy představit a jejich strukturu (volba - nacti_cislo - input). A nevím jestli hned na úvod nezmínit komentáře funkcí, popis co funkce dělá.

 
Odpovědět
20.7.2023 8:28
Avatar
Pavel Kubeš
Člen
Avatar
Pavel Kubeš:18.9.2023 11:43

v sekci: jednoduchý příklad, který využije všechna klíčová slova
bloku try-except:
while True:
try:
delenec = float(input("Za­dejte číslo, které chcete dělit: "))
delitel = float(input("Za­dejte číslo, kterým chcete dělit: "))

vysledek = delitel / delenec

Vzorec má být obráceně : vysledek = delenec / delitel

 
Odpovědět
18.9.2023 11:43
Avatar
Karel Zaoral
Člen
Avatar
Odpovídá na Pavel Kubeš
Karel Zaoral:25.9.2023 15:55

Ahoj Pavle, díky za zpětnou vazbu, opraveno.

 
Odpovědět
25.9.2023 15:55
Avatar
Michal Duvet
Člen
Avatar
Michal Duvet:28.9.2023 20:42

Některé věci nedostatečně vysvětlené a hodně stručné..

 
Odpovědět
28.9.2023 20:42
Avatar
Jakub Ježek
Člen
Avatar
Jakub Ježek:12.11.2023 16:38

Propastné rozdíly informačního objemu v jednotlivých lekcích mě nepřestávají překvapovat.

 
Odpovědět
12.11.2023 16:38
Avatar
Jakub Ježek
Člen
Avatar
Jakub Ježek:12.11.2023 16:48

Propastné rozdíly informačního objemu v jednotlivých lekcích mě nepřestávají překvapovat. Nejen že to kurz činí nepřehledným, ale značně to komplikuje jakékoli plánování (což je krapet hloupé, když mám povinný časový limit, do kterého kurz musím udělat). V jedné lekci (např. 14) si představíme dvě metody k jednomu tématu (velmi jednoduché), abychom si v jiné lekci (např. této) představili celé nové paradigma, s bambiliardou výrazů k tomu potřebných a k tomu si přihodili ošetření chyb, které by si samo o sobě zasloužilo samostatnou lekci a samostatné procvičení. K tomu je (z naprosto neznámého důvodu) přihozeno print, které s ničím z předchozího nesouvisí a navíc by mělo být někde v lekci 3, neboť jsme to doposud už několikrát použili.

 
Odpovědět
12.11.2023 16:48
Avatar
Pavel Kopecký:23.11.2023 14:54

Tak to bylo hodně letem světem. Očekával bych zrovna u takto důležitých témat podrobnější vysvětlení a více cvičení na procvičování. V celém kurzu by mohlo být více cvičení, ta jsou opravdu nedostatkem.

 
Odpovědět
23.11.2023 14:54
Avatar
Ivan Kaněv
Člen
Avatar
Ivan Kaněv:8.12.2023 8:29

Příliš mnoho věcí v jedné lekci a vysvětleno pouze velmi stručně.

 
Odpovědět
8.12.2023 8:29
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 118.