gpt4 book ai didi

python - cursor.fetchall() 使用 MySQldb 和 python 返回额外的字符

转载 作者:可可西里 更新时间:2023-11-01 06:57:40 28 4
gpt4 key购买 nike

当我使用 python 从 SQL 数据库中获取结果时,我在返回值的开头和结尾处获得了额外的字符。例如,下面的代码返回 ((56L,),) 而不是 56,有谁知道如何只获取值...以及 (( ,),) 的实际含义...?

hp= 56
id= 3

database = MySQLdb.connect (host="localhost", user = "root", passwd = "", db = "db")

cursor = database.cursor()

cursor.execute("UPDATE period_option SET points =%s WHERE period_option_id =%s", (hp, id))

cursor.execute("SELECT points FROM period_option WHERE period_option_id =%s", (po_id_home))
results = cursor.fetchall()
print results

最佳答案

fetchall() 返回一个元组列表(实际上是一个元组)。将其视为一系列行,其中每一行都是列中的一系列项目。如果您确定您的搜索将只返回 1 行,请使用 fetchone(),它返回一个元组,它更容易解包。以下是从 fetchall() 和 fetchone() 中提取所需内容的示例:

# Use fetchall():
((points,),) = cursor.fetchall() # points = 56L

# Or, if you use fetchone():
(points,) = cursor.fetchone() # points = 56L

关于python - cursor.fetchall() 使用 MySQldb 和 python 返回额外的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14861162/

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