Я импортирую из файла 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}
Пожалуйста, разрубить этот вплоть до соответствующий код. Я даже не могу сказать, откуда идут отпечатки. По крайней мере, удалите прокомментированный код. –
'contents = defaultdict (list)' ничего не делает, потому что вы повторно назначаете эту переменную следующую строку. – njzk2