sqlite3本身并没有像pymysql一样原生提供字典形式的游标。
1
|
cursor = conn.cursor(pymysql.cursors.DictCursor)
|
但官方文档里已经有预留了相应的实现方案。
1
2
3
4
5
|
def dict_factory(cursor, row):
d = {}
for idx, col in enumerate (cursor.description):
d[col[ 0 ]] = row[idx]
return d
|
使用这个函数代替conn.raw_factory属性即可。
1
2
3
4
5
|
con = sqlite3.connect( ":memory:" ) #打开在内存里的数据库
con.row_factory = dict_factory
cur = con.cursor()
cur.execute( "select 1 as a" )
print cur.fetchone()[ "a" ]
|
以上就是小编为大家带来的Python Sqlite3以字典形式返回查询结果的实现方法全部内容了,希望大家多多支持服务器之家~