我遵循本指南: https://scriptingmysql.wordpress.com/2011/09/09/retrieving-data-from-mysql-via-python/
这是代码:
...
cursor.execute ("SELECT X,Y,Z FROM tab_a")
# fetch all of the rows from the query
data = cursor.fetchall()
# print the rows
for row in data :
print row[0]
这不起作用。它说:
print row[0]
KeyError: 0
如果我将其更改为:
for row in data :
print row
它给出了:
{'X: '120', 'Y': '0', 'Z': '730'}
这是正确的数据但我希望它只打印120
而不是整个列表。
我该怎么做?
答案 0 :(得分:1)
添加cursor(MySQLdb.cursors.DictCursor)
表示您获得了一个dict,而不是您通常会获得的元组,因此您需要通过密钥访问:
for row in data:
print(row["X"])