pymysql fetchall()结果作为字典?

2024-04-20 06:41:26 发布

您现在位置:Python中文网/ 问答频道 /正文


Tags: python
3条回答

使用pymysql.cursors.DictCursor,它将返回表示为将列名映射到值的字典的行。

一些使用它的方法。。。

创建一个连接对象,并将其派生的所有游标都为DictCursors:

>>> import pymysql
>>> connection = pymysql.connect(db='foo', cursorclass=pymysql.cursors.DictCursor)
>>> with connection.cursor() as cursor:
...     print cursor
... 
<pymysql.cursors.DictCursor object at 0x7f87682fefd0>
>>> with connection.cursor() as cursor:
...     cursor.execute("SELECT * FROM bar")
...     print cursor.fetchall()
... 
2
[{u'col2': 'rty', u'col1': 'qwe'}, {u'col2': 'fgh', u'col1': 'asd'}]

从普通连接对象创建DictCursor

>>> connection = pymysql.connect(db='foo')
>>> with connection.cursor(pymysql.cursors.DictCursor) as cursor:
...     print cursor
... 
<pymysql.cursors.DictCursor object at 0x7f876830c050></code></pre>

使用with

在一行中连接并创建DictCursor
>>> from pymysql.cursors import DictCursor
>>> with pymysql.connect(db='foo', cursorclass=DictCursor) as cursor:
...     print cursor
... 
<pymysql.cursors.DictCursor object at 0x7f8767769490>

PyMySQL包含一个DictCursor。我想你想要什么就做什么。使用方法如下:

import pymysql
connection = pymysql.connect(db="test")
cursor = connection.cursor(pymysql.cursors.DictCursor)
cursor.execute("SELECT ...")

https://github.com/PyMySQL/PyMySQL/blob/master/pymysql/tests/test_DictCursor.py

在cursor()方法中使用DictCursor

相关问题 更多 >