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 – 9. diel - Bojovník do arény v Pythone

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
Odpovedá na Karel Zaoral
Jakub Ježek:16.12.2023 18:53

Fakt by mě zajímalo do jaké lekce 4 koukáš, protože já, když si stáhnu kód z lekce 4 tak tam mám toto:

class Kostka:
    """
    Třída reprezentuje hrací kostku.
    """

    def __init__(self, pocet_sten=6):
        self._pocet_sten = pocet_sten

    def __str__(self):
        """
        Vrací textovou reprezentaci kostky.
        """
        return str("Kostka s {0} stěnami".format(self._pocet_sten))

    def vrat_pocet_sten(self):
        return self._pocet_sten

    def hod(self):
        """
        Vykoná hod kostkou a vrátí číslo od 1 do
        počtu stěn.
        """
        import random as _random
        return _random.randint(1, self._pocet_sten)


# vytvoření
sestistenna = Kostka()
desetistenna = Kostka(10)

# hod šestistěnnou
print(sestistenna)
for _ in range(10):
    print(sestistenna.hod(), end=" ")

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

input()

Což mi přijde tedy značně jiné, než co sem postuješ. Obávám se tedy, že každý koukáme do nějaké jiné lekce 4.

Editované
Avatar
Karel Zaoral
Člen
Avatar
Odpovedá na Jakub Ježek
Karel Zaoral:17.12.2023 10:13

Ahoj, no, já se pro změnu obávám, že se mýlíš. Ty kódy třídy jsou stejné ;-)

Avatar
Jakub Ježek
Člen
Avatar
Jakub Ježek:17.12.2023 10:25

Očividně máme jinou představu o slově "stejné". Podle mě, když je něco "stejné", tak se to neliší. V ničem. To by totiž začátečníkům docela pomohlo. Ale, ok. Tak já pominu to, že je to zpřeházené a že je ta tam jinak ten f string a jen zopakuju, to co jsem říkal hned na začátku:
" on je to kromě toho fstringu i všechen ten kód, kde je vytvoření kostek a hod kostkami, ale čert to vem. Předpokládám, že to máme z toho smazat, a ten fstring si tam dopsat..." Zkus prosím Karle pochopit, že ty na to koukneš a vidíš. Já na to koukám a každý řádek, který se liší, je pro mě překážkou. A když je to takhle ve skoro každé lekci, tak je to fakt na houby...

Editované
Avatar
Karel Zaoral
Člen
Avatar
Odpovedá na Jakub Ježek
Karel Zaoral:17.12.2023 11:32

Ahoj, kód třídy je kód třídy a s kódem pro vytvoření a použití instance nemá nic společného. Nevím, co víc k tomu říct. Svůj post jsem kopíroval přímo z lekce z poslední ukázky, ve které se třída dokončila. Ten f-string upravím, díky.

Avatar
Jakub Ježek
Člen
Avatar
Odpovedá na Karel Zaoral
Jakub Ježek:17.12.2023 12:34

Nemusíš asi říkat nic, myslím že je zřejmé, za já hovořím o celém kodu a ty jen o kodu třídy. Což jsem ovšem říkal hned na začátku.

Avatar
Dušan Kovářík:14.1.2024 17:04

Chtěl jsem se podívat, jak se v Pythonu komentuje kód - hlavně jak se píší docstringy. Na začátku článku je uvedeno, že okomentovaný kód najdu v archivu, ale tam žádné komentáře nevidím.

Avatar
Dušan Kovářík:14.1.2024 22:20

Myslím že podmínka v metodě braň se:

if self._zivot < 0:
    self._zivot = 0
    zprava = f"{zprava[:-1]} a zemřel."

by měla být následující (menší než nebo rovno nule):

if self._zivot <= 0:
    self._zivot = 0
    zprava = f"{zprava[:-1]} a zemřel."

protože jinak když se stane, že útočník soupeře zabije tím způsobem, kdy mu život sebere přesně na nulu, hra sice korektně skončí, ale nevypíše se, že soupeř zemřel. Přijde mi dost divný být zabit a nezemřít při tom :D

Editované
Avatar
Radek Schlosser:26.2.2024 0:49

V následující větě máte 2× za sebou "že":

"Všimněme si, že že maximální zdraví si v konstruktoru odvodíme a
nemáme na něj parametr v hlavičce.
Zdroj: https://www.itnetwork.cz/…nik-do-areny"

Avatar
Karel Zaoral
Člen
Avatar
Odpovedá na Radek Schlosser
Karel Zaoral:29.2.2024 9:16

Opraveno, díky Radku!

Avatar
Stefan Bozik
Člen
Avatar
Stefan Bozik:1.3.2024 20:27

u print("Život: {0}".format(bo­jovnik.grafic­ky_zivot())): co znamena {0}.format ?

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 93.