IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

Diskusia – 4. diel - Hracia kocka v Pythone druhýkrát - Prekrývanie metód a random

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Jakub Ježek
Člen
Avatar
Jakub Ježek:7.12.2023 17:11

Nebylo by tady vhodnější, když už je argumentem importu přímo ve funkci úspora času a místa, použít "from random import randint" místo importu celého random? Nebo je to jednou a i tak by se naimportoval celý random?

 
Odpovedať
7.12.2023 17:11
Avatar
Karel Zaoral
Člen IT Redactor Gang
Avatar
Odpovedá na Jakub Ježek
Karel Zaoral:7.12.2023 20:57

Ahoj Jakube, v podstatě máš pravdu. Nedoporučuju to ale vůbec používat, i v lekci zdůrazňuji, že to uvádím jen pro zmínku. Import jedné funkce bude vždy rychlejší a méně náročný, než import celého modulu. V praxi, a zejm. u malých modulů jako je random, ten rozdíl ale bude téměř neznatelný.

Editované 7.12.2023 20:58
 
Odpovedať
7.12.2023 20:57
Avatar
Duy Hoang Do
Člen
Avatar
Duy Hoang Do:10.12.2023 22:35

Jaký jsou pravidla pro řádkování? Kostka mi to ho házela mnohem více krát, než jsem zjistil, že jsem měl jiný řádkování, resp. že chyběla jedna mezera mezi řádky

 
Odpovedať
10.12.2023 22:35
Avatar
Karel Zaoral
Člen IT Redactor Gang
Avatar
Odpovedá na Duy Hoang Do
Karel Zaoral:11.12.2023 0:02

Ahoj, s dotazem sem vždycky prosím vkládej kód, kterého se to týká. Na tvou otázku se bez toho prostě nedá odpovědět.

 
Odpovedať
11.12.2023 0:02
Avatar
Duy Hoang Do
Člen
Avatar
Duy Hoang Do:11.12.2023 8:31

Ahoj, už jsem to přepsal a nemůžu tu chybu znovu vyvolat, ale bylo něco v téhle oblasti.

print(sestistenna)
for _ in range(10):
    print(sestistenna.hod(), end=" ")

print("\n", desetistenna, sep="")
for _ in range(10):
    print(desetistenna.hod(), end=" ")

input()
 
Odpovedať
11.12.2023 8:31
Avatar
Karel Zaoral
Člen IT Redactor Gang
Avatar
Odpovedá na Duy Hoang Do
Karel Zaoral:11.12.2023 11:01

Ahoj, jediné, co mě napadá, je, že bys špatným odsazením vnořil ty cykly o sebe:

sestistenna = Kostka(6)
desetistenna = Kostka(10)
print(sestistenna)
for _ in range(10):
    print(sestistenna.hod(), end=" ")

    print("\n", desetistenna, sep="")
    for _ in range(10):
        print(desetistenna.hod(), end=" ")

input()

Pak by výstup vypadal takto:

<__main__.Kostka object at 0x00000228CB170C50>
1
<__main__.Kostka object at 0x00000228CB170DD0>
6 5 7 6 3 2 3 7 1 10 2
<__main__.Kostka object at 0x00000228CB170DD0>
7 6 6 2 8 7 10 4 4 8 6
<__main__.Kostka object at 0x00000228CB170DD0>
2 6 2 7 8 1 5 3 9 7 5
<__main__.Kostka object at 0x00000228CB170DD0>
8 9 10 9 8 7 2 7 1 1 4
<__main__.Kostka object at 0x00000228CB170DD0>
8 4 3 5 4 2 4 6 10 9 4
<__main__.Kostka object at 0x00000228CB170DD0>
2 1 2 1 10 6 8 9 6 3 6
<__main__.Kostka object at 0x00000228CB170DD0>
2 10 2 2 10 4 2 9 10 1 1
<__main__.Kostka object at 0x00000228CB170DD0>
6 3 7 4 4 3 8 1 3 6 6
<__main__.Kostka object at 0x00000228CB170DD0>
8 2 5 9 6 10 5 5 3 2 5
<__main__.Kostka object at 0x00000228CB170DD0>
10 2 3 10 8 10 9 3 5 6

Na odsazování si musíš zkrátka dát pozor. Tím, že Python neuzavírá bloky do závorek, je špatná indentace (osazení) bohužel zdrojem fakt pitomých chyb, které se někdy dost blbě hledají. Proto je důležité kód co nejvíce dělit do samostatných podcelků - tříd, metod a funkcí. Tím se pak snadněji pátrá po tom, kde je chyba.

 
Odpovedať
11.12.2023 11:01
Avatar
Duy Hoang Do
Člen
Avatar
Odpovedá na Karel Zaoral
Duy Hoang Do:11.12.2023 11:04

Díky, jj to bylo asi tim :)

 
Odpovedať
11.12.2023 11:04
Avatar
Jakub Leskota:11. júla 10:39

Proč vyplňovat ručně jaou range, když už máme metodu "vrat_pocet_sten" a to nám bude skvěle doplňovat čísla

 
Odpovedať
11. júla 10:39
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!