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:
Dostávám chybu IndexError: tuple index out of range:
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='{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))