cursor = conn.cursor(MySQLdb.cursors.DictCursor)
cursor.execute("SELECT name, category FROM animal")
result_set = cursor.fetchall()
for row in result_set:
    print "%s, %s" % (row["name"], row["category"])
//column names
num_fields = len(cursor.description)
field_names = [i[0] for i in cursor.description]

資料來源一
資料來源二

利用cursor物件的description屬性

cursor.execute("SELECT * FROM TABLE_NAME")
field_name = [des[0] for des in cursor.description]

https://stackoverflow.com/a/7831685/6202343

import pymysql
conn = pymysql.connect(host="localhost", port=3306, user="root", passwd="", db="mysql")
cur = conn.cursor()
cur.execute("SELECT Host,User FROM user")
print(cur.description)
print()
for row in cur:
    print(row)
cur.close()
conn.close()

使用cur.description應該就可以列出