我从一个sqlite3文件导入到一个字典中插入mongodb,我有点工作,但字典嵌套在列表中,我不明白为什么或如何把它拿出来。
# python3.5
import os
import sqlite3 as lite
from collections import defaultdict
import pprint
def dict_factory(cursor, row):
d = {}
for idx, col in enumerate(cursor.description):
d[col[0]] = row[idx]
return d
def open_sql(sql_folder, sql_name, sql_table):
path_name = os.path.join(sql_folder,sql_name).strip()
con = lite.connect(path_name)
con.row_factory = dict_factory
cur = con.cursor()
cur.execute('SELECT * FROM ' + sql_table)
contents = defaultdict(list)
contents = cur.fetchall()
pprint.pprint(contents)
con.close()
return contents
我的输出
[{'block_size': 512, 'img_offset': 0, 'obj_id': 2, 'vs_type': 1}]
我想要的输出是什么
{'block_size': 512, 'img_offset': 0, 'obj_id': 2, 'vs_type': 1}
答案 0 :(得分:2)
因为您使用的是fetchall()
,请使用fetchone()
代替:
contents = cur.fetchone()
pprint.pprint(contents)