gpt4 book ai didi

python - 循环内的 INSERT 未按我的预期工作(Python 2.7)

转载 作者:行者123 更新时间:2023-11-29 18:44:52 28 4
gpt4 key购买 nike

我正在针对包含 3 条记录的表运行情绪分析(图 1)。当我将结果打印到屏幕上(图 3)时,我的代码(图 2)似乎工作正常。对于 3 行中的每一行,我返回 3 个值 - 行 ID、情绪分数和幅度分数。 (9 个结果):

但是,当我尝试将相同的 9 个值插入到表中时(图 4),只有 3 个值(来自第一行)被插入到我的表中。

我觉得这确实很明显,但我很困惑问题是什么。谁能指出是什么阻止了插入在循环的所有 3 次迭代中工作。

编码新手。

图 1.

enter image description here

图2

import mysql.connector
from google.cloud import language
cnx = mysql.connector.connect(user='Blah', password='Blah',
host='Blah',
database='Blah')

cursor = cnx.cursor(buffered=True)

Latest = ("SELECT ResID, TextResp FROM Response")

client = language.Client()

cursor.execute(Latest)
for row in cursor:
document = client.document_from_text(row[1])
sent_analysis = document.analyze_sentiment()
sentiment = sent_analysis.sentiment
annotations = document.annotate_text(include_sentiment=True, include_syntax=True, include_entities=True)
ResID_ =row[0]
PhraseSent_ = sentiment.score
PhraseMag_ = sentiment.magnitude

print(ResID_)
print(PhraseSent_)
print(PhraseMag_)

cnx.commit()
cursor.close()
cnx.close()

图3

Fig 2

图 4. 使用 INSERT 语句的循环未按预期工作

enter image description here

最佳答案

问题是正在迭代的游标仅保存表中的第一行,而不是所有 3 行。改变

for row in cursor:

for row in cursor.fetchall():

问题已解决

关于python - 循环内的 INSERT 未按我的预期工作(Python 2.7),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44714461/

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