尝试打印时的异常

2024-04-20 07:35:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在try块中打印用户ID(int类型)和名称(varchar类型)。在输入UID和name的详细信息后,当尝试打印输入的值时,except块被命中。如果我从try块中删除print语句。它工作正常。敬请建议。在

import mysql.connector
import sys

con = mysql.connector.connect(user='root',password='dream',host='localhost',port='3306',database='arvind')

cursor = con.cursor()
try:
    cursor.execute("create table USER_INFO(U_ID bigint,name varchar(20))")
except:
    print("table already created\n")
    #cursor.close()
    #con.close()
    #sys.exit();
print("table created successfully :)\n")

#cursor.close()
#con.close()

ch = input("Do you want to inseret data ??? (y/n)")
if ch=='y':
    while 1:
        try:
            num = int(input("Enter UID : "))
            #print("num entered ",num)
            name = input("Enter U_name : ")
            #print("name entered ",name)
            print("UID : ",UID,"\nname: ",name)
        except:
            print("Enter user ID for UID and name for U_name")
            continue;
        cursor.execute("""INSERT INTO USER_INFO values (%s,%s)""",(num,name))
        con.commit()
        print("Data inserted in the table")
        c = input("Enter 'n' top exit")
        print("c : ",c)
        if(c == 'n'):
            sys.exit();

else:
    print("NO")

Tags: nameidcloseinputuidsysexittable
1条回答
网友
1楼 · 发布于 2024-04-20 07:35:44

代码试图访问未定义的变量UID

print("UID : ",UID,"\nname: ",name)
               ^^^

代码定义的实际变量是num

^{pr2}$

根据需要将UID更改为num,或将{}更改为{}。在

相关问题 更多 >