我有一个非常简单和小的数据库表,只有2列:Id和name。给定id,我必须找到并返回相应的name。我想将内容保存在字典中,并从中查找相应的值,而不是每次都查询数据库。我遇到过这个How to convert SQL query results into a python dictionary,但他们的目标是将每一行保存为一个dict,同时我认为我不需要字典列表,只需要一个带有键值对的dict。
def get_name(db_conn):
cursor = db_conn.cursor()
cursor.execute("SELECT id, name FROM table")
rows = cursor.fetchall()
d = {}
for row in rows:
id = row[0]
name = row[1]
d[id]= name
print(d)
考虑到我的任务,最好的方法是什么?
1条答案
按热度按时间esbemjvw1#
字典理解应该足够直接...
或者...
这将处理
cursor.fetchall()
中的每一行,并将key: value
对直接生成到字典中。它和你的循环非常相似,但是循环是在C中完成的,而不是在python中。