擅长:python、mysql、java
<p>如果您不提前知道列,请使用<a href="https://code.google.com/p/pyodbc/wiki/Cursor#description" rel="noreferrer">cursor.description</a>来构建列名列表,并使用<a href="http://docs.python.org/2/library/functions.html#zip" rel="noreferrer">zip</a>与每一行一起生成字典列表。示例假设已构建连接和查询:</p>
<pre><code>>>> cursor = connection.cursor().execute(sql)
>>> columns = [column[0] for column in cursor.description]
>>> print(columns)
['name', 'create_date']
>>> results = []
>>> for row in cursor.fetchall():
... results.append(dict(zip(columns, row)))
...
>>> print(results)
[{'create_date': datetime.datetime(2003, 4, 8, 9, 13, 36, 390000), 'name': u'master'},
{'create_date': datetime.datetime(2013, 1, 30, 12, 31, 40, 340000), 'name': u'tempdb'},
{'create_date': datetime.datetime(2003, 4, 8, 9, 13, 36, 390000), 'name': u'model'},
{'create_date': datetime.datetime(2010, 4, 2, 17, 35, 8, 970000), 'name': u'msdb'}]
</code></pre>