O
cursor
objeto tem um .description
atributo que informa os nomes de cada coluna, use isso para transformar uma linha em um dict:cursor.execute("""
SELECT id, name
FROM school_subjects
""")
columns = [desc[0] for desc in cursor.description]
result = []
for row in rows:
row = dict(zip(columns, row))
result.append(row)
Para obter detalhes sobre o
.description
atributo, consulte a especificação da API Python DB 2.0
.