Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 5. diel - Hracia kocka v Pythone - 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
Posledné komentáre sú na spodnej časti poslednej stránky.
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?

Avatar
Karel Zaoral
Člen
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é
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

Avatar
Karel Zaoral
Člen
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.

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()
Avatar
Karel Zaoral
Člen
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.

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 :)

Avatar
Jakub Leskota:11.7.2024 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

Avatar
Adam Černý
Člen
Avatar
Odpovedá na Jakub Leskota
Adam Černý:9. marca 9:16

Metoda vrat_pocet_sten na každé zavolání vrátí u daného objektu jediné číslo - hodnotu počet stěn. Tahle metoda, tak jak je, nikdy náhodná celá čísla vracet nebude.

Avatar
Michal Nekoranec:17. marca 19:25

repetetivní použití stejného projektu pro různé jazyky.

Odpovedať
Ke každé nepřekonatelné zdi se dá naprogramovat žebřík.
Posledné komentáre sú na spodnej časti poslednej stránky.
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.

Zobrazené 10 správy z 17.