Index hiba

, Author

Indexek Pythonban

Az index a Pythonban egy pozíciót jelöl egy sorozatban. Leggyakrabban egy sztringben vagy egy listában lévő pozícióra utal. Az indexelés a Pythonban, mint a legtöbb más programozási nyelvben, 0-val kezdődik. Például:

indexValueList =

Ebben a listában minden érték saját indexet is képvisel. Vegyük észre, hogy a lista első eleme valójában a 0 indexnél van. Hasonlóképpen, a lista maximális indexe egyenlő a lista hossza mínusz egy.

A lista adott indexen lévő elemének eléréséhez használjuk a szögletes zárójeles indexelési jelölést a következőképpen:

>>> novels =
>>> novels
'Jane Eyre'
>>> novels
'The Tenant of Wildfell Hall'

Megjegyezzük, hogy a negatív indexek is érvényesek a Pythonban. Például:

>>> novels
'The Tenant of Wildfell Hall'
>>> novels
'Wuthering Heights'
>>> novels
'Jane Eyre'

A karakterláncokat index szerint is elérhetjük. Például:

>>> name = "Brontë"
>>> print name
ë

IndexErrorok Pythonban

IndexErrorral találkozni Pythonban azt jelenti, hogy a lista olyan indexéhez próbáltál hozzáférni, amely nem létezik. Az érvényes indexek tartománya bármely lista esetében , ahol n egyenlő a lista hosszával. Ha a n - 1 indexnél nagyobb indexhez próbálsz hozzáférni, a Python egy tartományon kívüli index hibát fog dobni:

>>> suits =
>>> print suits
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range

Negatív indexelés esetén nem léphetjük túl a lista hosszát az ellenkező irányban. Nem léphetjük túl az -n indexet.

Bármely szekvencia típus hosszának meghatározásához használhatja a beépített len() függvényt:

>>> len()
4
>>> len("Hat")
3

A len() függvény visszaadja az elemek számát bármilyen szekvenciában, amelyet paraméterként kap. Egy szekvencia maximálisan megengedett indexének megkereséséhez egyszerűen vonjunk ki egyet ebből a számból.

A Pythonban az IndexErrors messze leggyakoribb oka az, hogy egy indexszel tévedünk bármelyik irányba. Ne feledjük, hogy egy n hosszúságú lista esetében a maximálisan megengedett indexek pozitív irányban n - 1, negatív irányban pedig -n.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.