Python format - IndexError tuple index out of range

Python format - IndexError tuple index out of range

Ahoj,při skládání SQL dotazu přes python skript, kdy dosazuji proměnné pomocí .format() takto: sql = str("UPDATE `queue` SET status='1', resultRDX='{1}', resultBMX='{2}', finished='{3}' WHERE id='{4}'" .format(countLoops, checkVysledekIBMX, datumStart, idQ))

Dostávám chybu IndexError: tuple index out of range:
Traceback (most recent call last): File "/var/python/python.py", line 281, in superLoop() File "/var/python/python.py", line 122, in superLoop superLoop() File "/var/python/python.py", line 248, in superLoop moreRDX(checkPositiveRDXPositionElement) File "/var/python/python.py", line 233, in moreRDX readerRDX(vysledekBMX,countLoops) File "/var/python/python.py", line 210, in readerRDX sql = str("UPDATE `queue` SET status='1', resultRDX='{1}', resultBMX='{2}', finished='{3}' WHERE id='{4}'" .format(countLoops, checkVysledekBMX, datumStart, idQ))IndexError: tuple index out of range


ODPOVĚĎ


Ahoj,

obecně lze říci, že chyba "IndexError tuple index out of range" znamená, že máš problém s indexem - někde na něj zkrátka odkazuješ špatně (nejčastěji, že daný index neexistuje), což se v tomto případě potvrdilo:

Celý problém je v tom, že nezačínáš format od nuly, ale od jedničky a index 4 tedy neexistuje, takže správně takto:

sql = str("UPDATE `queue` SET status='1', resultRDX='{0}', resultBMX='{1}', finished='{2}' WHERE id='{3}'" .format(countLoops, checkVysledekIBMX, datumStart, idQ))

Související obsah

programovani

python

Komentáře

Vaše reakce na Python format - IndexError tuple index out of range

Reference

Podívejte se na naše reference

Prohlédnout

Aplikace

Podívejte se na naše aplikace

Prohlédnout

Co umíme?

Podívejte se co umíme

Prohlédnout

Co umíme?

Vytváříme sofistikované aplikace pro náročné

Od webových aplikací přes android až po převodové můstky či složité informační systémy.

Podívejte se k nám

Máte ještě čas? Podívejte se na další rubriky

Tento web používá soubory cookie. Dalším procházením tohoto webu vyjadřujete souhlas s jejich používáním.. Více informací zde.