大家好,日安。
我对此有些疑问,这让我很挣扎。
关于“只能将str(而不是“int”)连接到str”的错误,我不知道如何修复它。我知道这是一个愚蠢的问题,但有人能帮我吗?
这是我的代码:
在这段代码中这是输入
l1 = tk.Label(window, text= "ID", font=("Bahnschrift",15))
l1.grid(column = 1, row=7)
t4 = tk.Entry(window, width=16, bd=3, bg="light blue")
t4.grid(column=2, row=7)
这是注册到数据库的代码:
def寄存器():
if (t1.get()=="" or t2.get()=="" or t3.get()=="" or t4.get()==""):
messagebox.showinfo("Result","Please Complete the Provided Details!")
else:
databases = mysql.connector.connect(
host ="localhost",
user = "userdata",
password = "",
database = "facerecog"
)
cursors = databases.cursor()
cursors.execute("SELECT * from record")
result = cursors.fetchall()
id= t4.get()+str()
for x in result:
id += 1
sql = "INSERT INTO record(ids, names,course_year,positions) values(%s ,%s ,%s , %s)"
val = (id, t1.get(), t2.get(), t3.get())
cursors.execute(sql,val)
databases.commit()
但它使错误,表明这一点:
文件"c:/用户/So_Low/桌面/final_recog/Recog.py",第77行,在寄存器id=1打字错误:只能连接str(不是"int")到str
不知道如何修理它,有人能帮我吗?
先谢谢你
将id=t4.get()str()替换为id=t4.get()。如果你需要在某个必须是字符串的地方使用id,那么使用str()函数进行强制转换
您的id
必须是str
,而不是int
:
您可以通过在添加时转换id
来解决此问题:
>>> id = "1"
>>> id = int(id) + 1
>>> id
2