【问题标题】:Data from MYSQL to Dictionary从 MYSQL 到字典的数据
【发布时间】:2015-07-31 15:57:21
【问题描述】:

我会开始说我是 Python 新手,所以也许这是一个奇怪的问题,

我有一个 3 行的数据库,我想在字典中循环它们,但我只得到一个 网站上显示的行,因此每次循环时都会覆盖某种内容。

from dbConnect import connect

c, conn = connect()

ranks = c.execute("SELECT * FROM ranks ORDER BY rankid ASC;")

ranks = c.fetchall()

def ranksddl():
   rank_dict = {}

for rank in ranks:
    rank_dict[rank] = rank[2]

return rank_dict

【问题讨论】:

  • 相关? DictCursor.
  • 在您的 for 循环中,您为字典 (rank_dict) 中的每个元素分配相同的值 -- rank[2]。这是你的意图吗?我认为您可能想要排名:rank_dict[rank] = rank
  • 你可能想要rank_dict['rank'] = rank(方括号内排名周围的引号)。

标签: mysql python-3.x flask


【解决方案1】:

你应该有:

ranks = ranks.fetchall()

而不是

ranks = c.fetchall()

获取所有结果,因为查询的结果存储在第一个ranks 变量中。因此,如果您想一次性获得所有结果,您应该在该变量而不是光标上使用 fetchall() 方法。

【讨论】:

    猜你喜欢
    • 2015-12-23
    • 2017-10-14
    • 1970-01-01
    • 1970-01-01
    • 2018-07-03
    • 2021-11-25
    • 1970-01-01
    • 1970-01-01
    • 2021-07-17
    相关资源
    最近更新 更多