标题:TypeError: can only join an iterable - 人脸识别应用程序

问题描述 投票:0回答:1

我正在使用 Python、Tkinter、OpenCV 和 MySQL 开发人脸识别应用程序。在我的代码中,我有一个函数

draw_boundary
,它在检测到的人脸周围绘制矩形并从 MySQL 数据库中检索信息。但是,我在尝试将变量
TypeError
n
连接的行上遇到了
"+".join(n)
,并显示消息“只能连接可迭代”。

蟒蛇 defdraw_boundary(img,分类器,scaleFactor,minNeighbors,颜色,文本,clf): # ...(之前的代码)

for (x, y, w, h) in features:
    # ... (Previous code)
    my_cursor.execute("select Name from student where StudentId=" + str(id))
    n = my_cursor.fetchone()
    n = "+".join(n)  # The error occurs on this line

我尝试使用“+”.join() 连接从 MySQL 数据库检索的值,但它似乎导致了 TypeError。在尝试加入它们之前,我已确保检索到的值不是“无”。

我希望能够帮助您解决此 TypeError 问题,并提供有关如何正确连接在此上下文中从数据库检索的值的建议。

python opencv mysql-connector
1个回答
0
投票

fetchone
检索查询结果集的下一行并返回单个序列,如果没有更多行可用,则返回 None。

您对之前的查询是否返回任何结果有多大把握? StudentId是否存在?

n = ('Joseph')
print('_'.join(n))


n = ('Joseph','Broseph')
print('_'.join(n))

n = None
print('_'.join(n))
© www.soinside.com 2019 - 2024. All rights reserved.