El cursor
el objeto tiene un .description
atributo que le dice los nombres de cada columna, utilícelo para convertir una fila en un 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 obtener detalles sobre .description
atributo, consulte la especificación de Python DB API 2.0
.