Python - Seznamy (6. díl)

« zpět na python

banan/img/python-logo-glassy.png

Seznam (list) je sekvence, které používají celá čísla jako indexy pro přístup jednotlivým položkám např, při procházení, vyhledávání apod.

Nevidíme je ale jsou implicitně nastaveny už při definici.


Seznamy jsou podobné slovníkům

Nový seznam vytvoříme (přiřadíme do proměnné) pomocí hranatých závorek, položky mohou být libovolného typu a oddělujeme je čárkou. Seznamy, řetězce a jiné entity, které se chovají jako uspořádané řady, nazýváme sekvence.

Pro přehlednost zvýrazním jednotlivé položky:

>>>seznam = ["ahoj", 8, [1, 16], 42.5] #V třetí sekvenci vidíme složenou entitu.

Přístup k položkám

Syntaxe je opět velmi jednoduchá, stačí napsat dentifikátor a za něj hranaté závorky do nichž vložíme index položky. Nezapomeňte však, že indexace začína od 0! 99 % programovacích jazyků indexuje pole od 0. Toto prosím nezapomínejte (např. při procházení pomocí cyklu for).

>>> print seznam[0] #která pak to je položka?smile
ahoj

  • Pokud bychom chtěli "printovat" položku která neexistuje tak to samozřejmě vypíše chybu.

Jednotlivé položky můžeme tisknout i obráceně a to zadání záporné hodnoty. U -1 bude odkazovat na první položku z opačného směru, čili zprava.

  • Pokud by jste chtěli použít print seznam[-0], vytiskne první položku zleva.!

>>>print seznam[-1]
42.5

Procházení seznamem

Pro procházení seznamem, jak jsem již zmínil, je vhodné použít cyklus for. Nyní si předvedeme jak by takový cyklus vypadal na jednoduchém příkladu.

>>> for i in ["ahoj", 8, [1, 16], 42.5]: #nezapomínat na dvojtečku!
print i,

ahoj 8 [1, 16] 42.5

Lze také využít cyklus while:

i = 0
while i < len(horsemen):
print horsemen[i]
i = i + 1

Operace se seznamy

Operátor + zřetězí seznamy a pomocí operátoru * můžeme násobit záznamy:

>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> c = a + b
>>> print c
[1, 2, 3, 4, 5, 6]
>>> [0] * 4
[0, 0, 0, 0]
>>> [1, 2, 3] * 3
[1, 2, 3, 1, 2, 3, 1, 2, 3]

Úseky

Pomáhají vybírat prvky v nějakém pořadí:

>>> list = ['a', 'b', 'c', 'd', 'e', 'f']
>>> list[1:3] #vybere 2. a zastaví se před 4.
['b', 'c']
>>> list[:4] #vybírá první 4
['a', 'b', 'c', 'd']
>>> list[3:] #poslední 4
['d', 'e', 'f']
>>> list[:] #netřeba komentovat
['a', 'b', 'c', 'd', 'e', 'f']

Pokračování příště....smile

Klientská sekce pro Vás

Spravujte své domény a hosting pohodlně 24 hodin denně

Kontakt pro zákazníky

Technická podpora

PO-PÁ 8:00-18:00

E-mail: podpora@banan.cz 

Příjem dotazů probíhá NONSTOP

Online pracovník

Richard Slipek

+420 608 611 883

Online chat

Zvládáme opensource

Na našich serverech jsme ručně ověřili funkci více než 140 opensource systémů, některé z nich nabízíme na jedno kliknutí v administraci.

Hostované domény

6684 domén 5601 1083

Poslední článek - HOMEPAGE PRVKY

O
Ověřit dostupnost domény
Zákaznické centrum: podpora@banan.cz +420 608 611 883 (PO-PÁ 8:00-18:00)NápovědaBlog
Technická podpora: PO-PÁ 800-1800X
Online pracovník: Richard Slipek
podpora@banan.cz
Online chat nebo +420 608 611 883
Kontaktovat technickou podporu můžete zde
Kontaktovat technickou podporu můžete zde
PO-PÁ 800-1800