gpt4 book ai didi

Python SQLite3/从表中选择行

转载 作者:行者123 更新时间:2023-11-28 20:33:42 25 4
gpt4 key购买 nike

board  balls  win1   win2   result
----- ----- ---- ---- ------
1 1 0 0 1
4 1 0 0 1
1024 1 0 0 1

当我们只从表格中选择一行但多列时,例如,通过使用:

connection = sqlite3.connect("spline.db")
crsr = connection.cursor()
crsr.execute("SELECT board FROM positions WHERE balls = 1")
result = crsr.fetchall()
print result
connection.close()

结果是一个元组列表:

[(1,), (4,), (1024,)]

有什么方法可以直接获取整数列表吗?一种方法是:

print [result[i][0] for i in range(len(result))]

而不是:

print result

但是每当结果集中有多达 107 行时,我们无法想象像这样迭代变量 i,然后列出其中的整数。因此,我想知道是否有任何其他替代解决方案可用于它,无论哪种解决方案都足够直接。

最佳答案

您可以像这样使用 row_factory 属性:

connection = sqlite3.connect("spline.db")
conn.row_factory = lambda cursor, row: row[0]
crsr = connection.cursor()
crsr.execute("SELECT board FROM positions WHERE balls = 1")
result = crsr.fetchall()
print result
connection.close()

这应该给你一个列表,而不是元组。

您可以阅读有关 row_factory 的更多信息 here .

关于Python SQLite3/从表中选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50074564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com