Veľkonočná akcia je tu a s ňou aj extra kredity ZADARMO na náš interaktívny e-learning. Dobij si teraz kredity a posuň sa vo svojej kariére vpred!
Zarábaj až 6 000 € mesačne! Akreditované rekvalifikačné kurzy od 0 €. Viac informácií.

Diskusia – 2. diel - Tuples, množiny a slovníky 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
Avatar
Lindar
Člen
Avatar
Lindar:23.6.2018 10:37

Ahoj!
Cas pokrocil, ja pouzivam Python 3.6. Mozna proto shledavam nasledujici nesrovnalosti:
insert(prvek, pozice) - prohodit prvek/pozice
remove(prvek) Odstraní prvek ze seznamu. - doplnila bych, ze pouze na nejnizsim indexu, nikoli vsechny vyskyty

Navic v testech je Python 2.7 a u otazky, co vraci print( type(1/2) ) mi IDEcko aktualne vraci <class 'float'>, nikoli <type 'int'>... Je to matouci, kdyz jsem Python 2.7 nikdy nepouzivala.

 
Odpovedať
+1
23.6.2018 10:37
Avatar
David Hartinger
Vlastník
Avatar
Odpovedá na Lindar
David Hartinger:23.6.2018 11:29

Ahoj, díky za připomínky. Tento článek je pro Python 3, stejně jako celý kurz. U metody insert() je to opravdu prohozené a to je chyba, opravil jsem to. K delete() jsem přidal informaci o prvním výskytu. Kvíz 2.7 je zde proto, že se tato verze stále často používá, to tedy není chyba.

Odpovedať
+1
23.6.2018 11:29
New kid back on the block with a R.I.P
Avatar
Marty
Člen
Avatar
Marty:16.3.2020 3:54

Ahoj,

dokázal by mi někdo vysvětlit, co je toto za fail? Proč je to u 4. printu posunuté o jeden index?

print([2*x for x in range(5)])  # [0, 2, 4, 6, 8]
print({2*x for x in range(5)})  # {0, 2, 4, 6, 8}

print([2*x for x in range(1,5)])  # [2, 4, 6, 8]
print({2*x for x in range(1,5)})  # {8, 2, 4, 6}

Díky.

 
Odpovedať
+2
16.3.2020 3:54
Avatar
Odpovedá na Marty
Antonín Martykán:19.3.2021 22:07

v posledním řádku jsi použil složené závorky, které se používají pro kolekci "set" (množina). Ta je, na rozdíl od seznamu, neuspořádaná (nedá se indexovat)

 
Odpovedať
+1
19.3.2021 22:07
Avatar
Geronymo Fuhrmann:24.7.2022 13:41

Lekce není úplně aktualní a kód jak na zacátku o n-ticích tak u seznamů je chybný:
jiny = [1, 2, 3]
jiny2 = list(range(3))
jiny2 nevrátí [ 1, 2, 3], ale [ 0, 1, 2]

 
Odpovedať
+1
24.7.2022 13:41
Avatar
Petr Váchal
Člen
Avatar
Petr Váchal:3.11.2022 22:16

U alternativního procházení seznamu mi přijde nešťastné zmiňovat for znak in range(len(seznam)):
Máme funkci enumerate. Ta je pro tento účel přímo vytvořená. Tak proč to komplikovat...
Jinak hezká lekce, děkuji vám za ni. Oceňuji informaci o funkci reversed v metodě sort a o funkci key.

Odpovedať
3.11.2022 22:16
Tolik bezradnosti, a furt se žije. Ej!
Avatar
arnie
Tvůrce
Avatar
Odpovedá na Marty
arnie:19.1.2023 16:35

Ahoj,
range() bez udání spodního limitu začíná automaticky na 0 a končí číslem o jedno menší než je nastaven horní limit (číslo které zadáš do range() udává počet cyklů, pokud zadáš spodní i horní limit, počet cyklů = horní limit - spodní limit), například: range(2, 5) začne na 2 a skončí na čísle 4 (cykly budou 5-2=3).

V tvém případě jsi v prvním příkladu omezil range pouze shora, tudíž program prošel 5 cyklů (0, 1, 2, 3 ,4).
A v druhém příkladu jsi omezil range zdola i shora, tudíž program prošel 4 cykly (1, 2, 3, 4) 😉

 
Odpovedať
19.1.2023 16:35
Avatar
Marie Pazoutova:12.6.2023 14:20

Jen upozornění na chybu:
hned u první ukázky k tuples, pro

print(polozky)

je uvedený výstup z konzole 1, 2, 3, 7,
x správně má být (1, 2, 3, 7)

 
Odpovedať
+1
12.6.2023 14:20
Avatar
Odpovedá na Marie Pazoutova
Marie Pazoutova:12.6.2023 15:28

a další poznámka, v ukázce vyhledávání ve slovníku s operátorem in bych ukázkový skript upravila tak, aby fungoval i pro input zadaný s velkým písmenem:

simpson = input("Ahoj, zadej svého oblíbeného Simpsona (z rodiny Simpsonů): ").lower()

tak, jak je to teď úplně nedává smysl použití simpson.lower() až dál (řádek 12). Si myslím.

 
Odpovedať
12.6.2023 15:28
Avatar
Michal Salvet:28.7.2023 12:18

Ten pop() be mel vratit random element ze setu. Je nejake vysvetleni proc to v tomto pripade vraci porad 20?
Jinak doporucuji zapomenout/vymazat ceske nazvy a pouzivat jen anglicke pro tyhle veci. Je v tom pak hrozny gulas a zbytecne komplikovane. Taky vsude rikate treba string nebo str a vsichni tomu rozumi.

 
Odpovedať
+1
28.7.2023 12:18
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 29.