You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python:如何将SQL查询的chatID结果填充至数组?

解决SQL查询结果批量存入数组的问题

你的问题出在循环里每次都重新给chats_id赋值为只包含当前row的新列表,导致最后只会保留最后一条查询结果。

修正方法一:初始化空列表后追加元素

先创建一个空列表,再在循环里把每条结果中的chatid添加进去:

query = "SELECT `chatid` FROM `chats`"
cursor = await self.db.execute(query)
record = await cursor.fetchall() 

chats_id = []  # 初始化空数组
for row in record:
    # fetchall()返回的每一行是元组(比如('1',)),需取出第一个元素
    chats_id.append(row[0])

修正方法二:用列表推导式简化代码

可以直接通过列表推导式一步生成目标数组,代码更简洁:

query = "SELECT `chatid` FROM `chats`"
cursor = await self.db.execute(query)
record = await cursor.fetchall() 

chats_id = [row[0] for row in record]

这样就能得到你期望的["1","2","3","4"]格式的数组了。

内容的提问来源于stack exchange,提问作者laraCoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 20:32:04