Přejít na téma:
Seznamy v Pythonu
Přejít na cvičení:
Porozumění
Zobrazit na celou obrazovku

Váš denní počet odpovědí je omezen. Pro navýšení limitu či přístup do svého účtu s licencí se přihlaste.

Přihlásit se
Sdílet Zobrazit shrnutí tématu
Seznamy v Pythonu

Seznam (list) je uspořádaná kolekce hodnot libovolného typu.

Vytvoření seznamu

Seznamy zapisujeme pomocí hranatých závorek:

s = []           # prázdný seznam

s = [8, 3, 45]   # seznam tří čísel

Seznam můžeme také vytvořit pomocí klíčového slova list.

s = list("prase")   # vytvoří seznam ['p', 'r', 'a', 's', 'e']

Indexování

K jednotlivým prvkům seznamu přistupujeme pomocí indexování hranatými závorkami. Pozor, indexujeme od nuly. Zápornými čísly můžeme indexovat odzadu:

s = ["pes", "prase", "ovce", "koza"]

s[0]      # první prvek seznamu => "pes"

s[1]      # druhý prvek seznamu => "prase"

s[-1]     # poslední prvek seznamu => "koza"

s[-2]     # předposlední prvek seznamu => "ovce"

Pomocí dvojtečky můžeme indexovat část seznamu:

numbers = [37, 99, 42, 7, 13, 1, 1000]

print(numbers[2:5])  # => [42, 7, 13]

print(numbers[:3])   # => [37, 99, 42]

print(numbers[-2:])  # => [1, 1000]

Operace se seznamy

Užitečné funkce se seznamy:

s = [8, 3, 45]

a = len(s)    # délka seznamu

s.append(7)   # přidání prvku do seznamu

s.sort()      # seřazení prvků v seznamu

t = sorted(s) # seřadí prvky v s a tento nový seznam přiřadí do t

              # s se nezmění

Všimněte si, že zde využíváme takzvanou tečkovou notaci: píšeme s.sort(), nikoliv běžné volání funkce tvaru sort(s). To souvisí s tím, že seznamy jsou reprezentovány jako objekty.

Seznamy a for cyklus

Pomocí for cyklu můžeme procházet prvky seznamu:

s = [8, 3, 45]

for x in s:

    print(x)

Alternativně můžeme procházet prvky seznamu takto (tento zápis je bližší tomu, jak procházíme seznamy v jiných programovacích jazycích):

for i in range(len(s)):

    print(s[i])

Materiál k tisku: čtení kódu

Kromě níže uvedených interaktivních cvičení je k dispozici také materiál k tisku (cvičení na dobré rozlišení mezi několika podobnými kódy, u kterého se hodí dělat si poznámky na papír):


Fatal error: Uncaught TypeError: App\Service\PsService::getUserItemStatusByPs(): Argument #1 ($user) must be of type int, null given, called in /var/www/umimeprogramovat.cz/webroot/src/Snippet/Exercise/ItemBasedExercise/ItemBasedExercisePlugin.php on line 66 and defined in /var/www/umimeprogramovat.cz/webroot/src/Service/PsService.php:69 Stack trace: #0 /var/www/umimeprogramovat.cz/webroot/src/Snippet/Exercise/ItemBasedExercise/ItemBasedExercisePlugin.php(66): App\Service\PsService->getUserItemStatusByPs() #1 [internal function]: App\Snippet\Exercise\ItemBasedExercise\ItemBasedExercisePlugin->progress() #2 /var/www/umimeprogramovat.cz/webroot/src/Helper/ExerciseHeaderBuilder.php(20): call_user_func() #3 /var/www/umimeprogramovat.cz/webroot/src/Template/BaseExercise/default.php(26): App\Helper\ExerciseHeaderBuilder->render() #4 /var/www/umimeprogramovat.cz/webroot/src/Controller/BaseExercise.php(119): require('...') #5 /var/www/umimeprogramovat.cz/webroot/exercise/porozumeni.php(21): App\Controller\BaseExercise->renderDefault() #6 /var/www/umimeprogramovat.cz/webroot/index.php(127): include('...') #7 {main} thrown in /var/www/umimeprogramovat.cz/webroot/src/Service/PsService.php on line 69