Seznamy v Pythonu
Porozumění
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 seSeznam (list) je uspořádaná kolekce hodnot libovolného typu.
Vytvoření seznamu
Seznamy zapisujeme pomocí hranatých závorek:
Seznam můžeme také vytvořit pomocí klíčového slova list.
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:
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):
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