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 – 12. diel - Zoznam 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
Nevik Qsuluqod:20.12.2015 18:43

Nemohl by si mi poradit, potřebuju vyprintovat seznam ale potřebuju aby to bylo bez hranatých závorek, obzvlášť když mám seznam v seznamu dik.

Odpovedať
Je těžké naučit se HTML, všude ho učí špatně, a co itnetwork? TO JE BIBLE
Avatar
gcx11
Tvůrce
Avatar
gcx11:20.12.2015 18:56

Ahoj, na to se jde pomocí rekurze.
Zjistíš zda-li je prvek seznamu seznam, pokud ano, projedeš prvky nového seznamu, pokud ne, můžeš v klidu vytisknout prvek

Pokud budeš potřebovat hezčí výstup, je lepší si pohrát s parametry funkce print

def vytiskni_vnoreny_seznam(seznam):
    for prvek in seznam:
        if isinstance(prvek, list):
            vytiskni_vnoreny_seznam(prvek)
        else:
            print(prvek)
Avatar
hanpari
Člen
Avatar
Odpovedá na Nevik Qsuluqod
hanpari:20.12.2015 20:03
test = [1,2,
            [1,2,3],
            [1,2,
             [1,2,3]],
        4,5]

vysledek = str(test).replace("[","").replace("]","")
print(vysledek)
Avatar
hanpari
Člen
Avatar
Odpovedá na Nevik Qsuluqod
hanpari:20.12.2015 20:07

Anebo takto pro list i tuple:

vysledek = "".join([znak for znak in str(test) if znak not in "[]()"])
Avatar
Odpovedá na hanpari
Nevik Qsuluqod:21.12.2015 0:03

dik za odpoved

Odpovedať
Je těžké naučit se HTML, všude ho učí špatně, a co itnetwork? TO JE BIBLE
Avatar
hanpari
Člen
Avatar
Odpovedá na Nevik Qsuluqod
hanpari:21.12.2015 14:40

Není zač, jen poznámka na okraj. Moje první řešení nepoužívej, to byla jen ukázka, zbytečně dělá totéž dvakrát. A v druhém řešení si vyhoď seznamovou komprehenzi. Je tam myslím zbytečná.

Avatar
nickname01
Člen
Avatar
nickname01:12.7.2019 15:20

Navrhuji vyměnit následující část textu

range(m, n, i) - vrátí čísla od m a každé další i-té číslo do n-1

za toto: range(m, n, i) - vrátí čísla od m a každé další i-té číslo do n, ale nebude počítat s prvkem n

Důvod:
Původní definice je podle mě nesprávná.

list(range(5, 3, -1))

vrátí [5, 4], nikoli [5, 4, 3, 2]. To samé pro ořezávání.

Jestli se mýlím, prosím opravte mě.

Avatar
Denisa Váňová:1.11.2019 21:32

Ahoj, pomohl by mi někdo s tímto zadáním v pythonu - uživatel zadá číslo n, program vypíše jeho zápis ve dvojkové soustavě. Moc děkuji :)

Avatar
Tom S.
Člen
Avatar
Odpovedá na Denisa Váňová
Tom S.:2.11.2019 12:50

Ahoj, na převod čísla do binární soustavy existuje funkce bin.

bin(99)

Číslo 99 je v binární soustavě 0b1100011 a pokud chceš jenom ty čísla, tak do proměnné ulož čísla která jsou za 0b a máš to hotovo. ;-)

Avatar
Milan Turyna
Tvůrce
Avatar
Milan Turyna:2.11.2019 14:51

Pokud chceš jen ty čísla jak psal Tomáš Sobol tak to se dá udělat pomocí:

bin(99)[2:]

bin(99) převede číslo (například 99) do dvojkové soustavy a [2:] udělá to, že se z výsledku odeberou první dva znaky v tomhle případě 0b.

Pokud ale budeš chtít aby uživatel zadal číslo do inputu a potom se jeho číslo dále zpracovávalo tak si na to udělej například funkci (to je jedno) a zkontroluj jestli to co zadal je opravdu číslo (integer, float myslím že nejde převést do dvojkové soustavy a nebo jde, ale bude s desetinnými čísly.).

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