python列表从数据库表转换成字典

2024-04-19 07:39:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试着把一份清单从项目表和价格表改成字典,以便使用,但还是做不到 我想成为字典里的名字是关键,价格是价值

这是从数据库读取的代码

def items():
    cur.execute("SELECT name,price FROM items")
    return cur.fetchall()

我要这样分开

 Items = {'mobile': 100.80,'projecter': 450.45,'canon': 350.65}

需要帮忙吗


Tags: 代码name数据库execute字典defitems价格
3条回答
Items = {} 
for item in items():
    Items[item[0]] = item[1]

应该像fetchall那样返回元组列表,元组的值是按顺序排列的。你知道吗

^{}构造函数接受带有key, value对的iterable,而cursor.fetchall()正好生成了它,所以您只需实例化一个dict并返回结果:

def items():
    cur.execute("SELECT name,price FROM items")
    return dict(cur.fetchall())

您可以这样尝试,您的结果对象将类似于元组列表或列表,因为您想返回两个值,您可以尝试dict理解:

items = {row[0]:row[1] for row in cur.fetchall()}

相关问题 更多 >