mysql - 数据库中的两列并转换为字典
问题描述
我正在尝试从 MySQL 数据库中的两列创建字典。在我的第一次尝试中,我提取了两个列表并将它们压缩在一起以创建一个 python 字典。
由于我认为列表保持顺序,我假设这两个列表在顺序方面会匹配,并且 url 将与字典中的特定播放器相关,但情况似乎并非如此
我的代码是:
#extract a player list from db
cur.execute("SELECT full_name FROM player")
player_names_two = cur.fetchall()
player_name_list_two = [row[0] for row in player_names] #convert to list
#exctract url list from same table in db
cur.execute("SELECT real_gm_profile FROM player")
profile_urls = cur.fetchall()
profile_urls_list = [row[0] for row in profile_urls]
#player and url dict
team_player_dic = dict(zip(player_name_list_two, profile_urls_list))
然后我想使用字典检查详细信息并更新我的数据库,这一切正常,尽管 URL 与播放器不匹配,因此目前更新不正确。
有没有更好的方法来确保键值正确匹配?
谢谢
解决方案
在单个查询中获取full_name
&然后使用字典理解real_gm_profile
前任:
#extract a player list from db
cur.execute("SELECT full_name, real_gm_profile FROM player")
result_set = cur.fetchall()
team_player_dic = {row["full_name"]: row['real_gm_profile'] for row in result_set} # OR {row[0]: row[1] for row in result_set}
推荐阅读
- reactjs - React.js 路由器不同的背景图片
- django - Django 单元测试(使用 DRF):如何测试 Passwordresetview?
- javascript - 为什么我不能使用 Apollo Link State 添加待办事项?
- python-3.x - 如何在通过python3读取一行csv文件时删除前一行
- import - mscrm 导入更新列映射引用属性
- r - 在 R- 两个问题中创建变量
- javascript - 如何从一个 div 转到滑块中的特定幻灯片?
- windows - HBase-testing-util:Windows 上的所有数据节点都是错误错误
- regex - 正则表达式,我如何提取字符串VBscript的一部分
- typescript - 打字稿字符串枚举访问