Трябва да има запетая след lines[0]
за да направите това кортеж.
curr.execute("""
SELECT fields.fieldkey
FROM fields
LEFT JOIN zone ON zone.fieldkey=fields.fieldkey
WHERE zone.zonekey = %s;
""", (lines[0],))
Тъй като execute
метод очаква последователност (или преобразуване)
той итерира низа, който сте предоставили, ограден със скоби. Така че е необходимо изрично да се направи това кортеж. Същият резултат, с по-ясен код, може да се получи с помощта на tuple
функция
:
(tuple(lines[0]))