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
brevnovak
Člen
Avatar
brevnovak:19.12.2017 13:33

u toho faktorialu mi prijde, ze místo

if cislo > 0:

staci dat

if cislo > 1:

fce se tak zavola o (n-1)x ;)

 
Odpovědět
19.12.2017 13:33
Avatar
Tomas Tran
Člen
Avatar
Tomas Tran:28.4.2018 20:30

som uplny zaciatokcnik a neslo mi do hlavy preco ta funkcia konci
toto mi pomohlo na pochopenie ze vyskoci z "cyklu" ked dojde ku nule kde to posledny krat nasobi 1kou

def faktorial(cislo):
    if cislo > 0:
        print(cislo)
        return faktorial(cislo - 1) * cislo
    else:
        print("bol som tu")
        return 1


cislo = int(input("Vloz cislo na vypocet faktorialu"))

print("Faktorial cisla",cislo,"je",faktorial(cislo))
 
Odpovědět
28.4.2018 20:30
Avatar
Adam Šima
Člen
Avatar
Adam Šima:18.1.2019 19:34

Zdravím,
mohl by mi prosím někdo jednoduše vysvětlit proč je funkce main až na posledních řádcích a pomocí čeho je propojená s funkcí nacti_cislo? Tak nějak bych čekal propojení skrz proměnou nebo něco takovýho, což tam nevidím. Trochu jsem se do těch funkcí zamotal a už jsem ztratil skoro 2 hodiny louskáním textu stále dokola, začínám být malinko zoufalý :)

 
Odpovědět
18.1.2019 19:34
Avatar
Martin Gregor:1.3.2019 20:33

neviem ci to napisem spravne ale main() musi byt posledna lebo v nej sa vuzivaju vsetky ostane funkcie tak tie musia byt najprv definovane ... neviem ci je to takto definovane aj v pythone ... ale odhadujem ze ano ...
a prepojenie je tam vykonane tak ze vo vnutri funkcii main sa vola funkcia nacti_cislo. Cize po spusteni programu sa vola funkcia main() a v nej funckiou nacti_cislo sa vykona nacitanie cisel z klavesnice, nasledne volba matematickej operacia a nakoniec opakovanie prikladu
neviem ci to ma este zmysel pisat to tu kedze otazka je mesiac stara ale tak mozno pre druhych ak budu mat rovnaku otazkz ...
dufam ze som to napisal dobre, nie som zrovna znaly v pythone.. :)

 
Odpovědět
1.3.2019 20:33
Avatar
Aleš Fiala
Člen
Avatar
Aleš Fiala:28.7.2019 21:00

Začalo mi při Run module vyskakovat tohle. Co mám špatně?

 
Odpovědět
28.7.2019 21:00
Avatar
Odpovídá na brevnovak
Daniel Klement:24.9.2020 10:21

ten jeden krok navic je celkem zanedbatelny

Editováno 24.9.2020 10:21
Odpovědět
24.9.2020 10:21
Jestliže vím, že znám málo, dosáhnu toho, že budu znát více.
Avatar
Filip Širůček:6.10.2020 16:23

Měl bych drobnou připomínku k vysvětlení ošetření chyb v bloku try except a obecně pasivní a aktivní ošetření chyb atd. Není to kritika, protože je vůbec super že nějaké takové naučné weby jsou. Takže návrh na zlepšení. Není zde totiž moc vysvětleno proč a jak to funguje obecně ten blok a vysvětlení pasivní / aktivní ošetření atd. Ale dobře je to naopak vysvětleno až v kapitole práce se soubory. Takže pokud bychom jeli chronologicky bylo by asi lepší kdyby to vysvětlení bylo už zde a pak už se to nemusí rozebírat tak detailně (princip) v kapitole Práce se soubory...

 
Odpovědět
6.10.2020 16:23
Avatar
Filip Širůček:6.10.2020 19:39

Zdravím rozumím tomuto zápisu 1) :
except jmeno_vyjimky as chyba (Tzn do proměnné chyba se uloží systémová hláška vyjímky)
ale nerozumím tomuto zápisu 2):
except ValueError:
print(text_chyba)
Jak se tady něco může vytisknout / zobrazit když nemám předtím uloženou hodnotu do proměnné text_chyba tzn předtím mně chybí něco jako: ValueError as text_chyba nebo text_chyba = ValueError.

 
Odpovědět
6.10.2020 19:39
Avatar
Filip Širůček:7.10.2020 20:46

Super dobrý, komplexní a praktický cvičení. Už si připadám jak velkej programátor. Ale hádám že tohle stačit nebude k získání dobré práce ale i tak z toho má radost. Je fajn když něco vytvoříte a ono to funguje :-)

 
Odpovědět
7.10.2020 20:46
Avatar
Jarda Antoš
Člen
Avatar
Jarda Antoš:21.1.2021 9:59

Osetreni vyjimek mi zde prijde celkem slabe vysvetlene. Ocekaval bych, ze tam bude vice prikladu. Navic v odstavci s osetrovanim vyjimek neni ani zminka o 'else' ale v prikladu s kalkulackou, kterou nasledne upravujeme, je.

Take by se hodili doplnit informace u vysvetleni funkci. Chybi mi tu, jestli mohu vynechat klicove slovo 'return' a mit jen funkci, co nic nevraci. Take se sem hodi zminka o globalnosti a lokalnosti promennych, pokud takovy problem v Python tedy je. A jeste by se hodila jmenna konvence pro python.

Celkove mam ze zakladniho kurzu Python rozporuplne pocity. Kurz opravdu projednava zaklady, ale prijde mi, ze je dost natukava a nedoda dalsi dulezite informace. Neni to jen z teto kapitoly, ale i u predchozich jsem tento pocit mel. Absolvoval jsem zde jiz kurz zakladu C# a ten je podle meho nazoru na vyssi urovni. Latka je tam vysvetlena podrobneji a dava se vetsi pozor na veci, ktere programatora mohou prekvapit. Pokud je neco nejednoznacne, tak je to tam vysvetleno. V tomhle ohledu mi to prijde jako skoda, kdyz se Python bere i jako dobry vstupni jazyk do sveta programovani, ze si musim hodne zakladnich veci dohledavat i na jinych strankach.

 
Odpovědět
21.1.2021 9:59
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.