Python Sqlite3以字典形式返回查询结果的实现方法

yipeiwu_com5年前Python基础

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设计】~

相关文章

python3 pathlib库Path类方法总结

这篇文章主要介绍了python3 pathlib库Path类方法总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1、调用库...

python 自动轨迹绘制的实例代码

python 自动轨迹绘制的实例代码

用到的思维: 自动化思维,数据和功能分开处理,用数据驱动程序自动运行 接口化设计,数据与程序的对接方式要清晰明了 二维数据应用,应用维度组织数据,二维数据最常用 代码 # AutoT...

Python迭代和迭代器详解

迭代器 迭代器(iterator)有时又称游标(cursor)是程式设计的软件设计模式,可在容器物件(container,例如链表或阵列)上遍访的界面,设计人员无需关心容器物件的内存分配...

python3.7通过thrift操作hbase的示例代码

python3.7通过thrift操作hbase的示例代码

HBase是一个分布式的、面向列的开源数据库,其是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBas...

Pytorch实现LSTM和GRU示例

Pytorch实现LSTM和GRU示例

为了解决传统RNN无法长时依赖问题,RNN的两个变体LSTM和GRU被引入。 LSTM Long Short Term Memory,称为长短期记忆网络,意思就是长的短时记忆,其解决的仍...