Python Sqlite3以字典形式返回查询结果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python Sqlite3以字典形式返回查询结果相关的知识,希望对你有一定的参考价值。

sqlite3本身并没有像pymysql一样原生提供字典形式的游标。

cursor = conn.cursor(pymysql.cursors.DictCursor)

但官方文档里已经有预留了相应的实现方案。

def dict_factory(cursor, row):  
    d = {}  
    for idx, col in enumerate(cursor.description):  
        d[col[0]] = row[idx]  
    return d  

使用这个函数代替conn.raw_factory属性即可。

con = sqlite3.connect(":memory:") #打开在内存里的数据库
con.row_factory = dict_factory
cur = con.cursor()
cur.execute("select 1 as a")
print cur.fetchone()["a"]

官方文档链接

以上是关于Python Sqlite3以字典形式返回查询结果的主要内容,如果未能解决你的问题,请参考以下文章

python MySQL执行SQL查询结果返回字典

python查询mysql以字典返回

GraphQL 以数组形式返回查询结果

用python操作mysql数据库(之数据查询结果返回字典类型)

Python 字典 keys() 方法

Python 字典 values() 方法