Python 从一个sqlite3表中的列中获取值并插入到另一个表中
我正试图在我的程序中添加一个功能,在这个功能中,老师为他们所上的课的用户设置家庭作业。有一个用户表,其中每个用户都有唯一的UserID、classname、firstname和姓氏。我试图获取某个类中的学生的用户名,并将其插入到家庭作业集表中。我能够成功地检索用户ID,但当我将它们插入HomeworkSet表时,值显示为(例如)('2A1910E919A84230BFC2A71111160CADE',),我不确定如何删除括号和撇号Python 从一个sqlite3表中的列中获取值并插入到另一个表中,python,sqlite,Python,Sqlite,我正试图在我的程序中添加一个功能,在这个功能中,老师为他们所上的课的用户设置家庭作业。有一个用户表,其中每个用户都有唯一的UserID、classname、firstname和姓氏。我试图获取某个类中的学生的用户名,并将其插入到家庭作业集表中。我能够成功地检索用户ID,但当我将它们插入HomeworkSet表时,值显示为(例如)('2A1910E919A84230BFC2A71111160CADE',),我不确定如何删除括号和撇号 def Class_sethw(): homew
def Class_sethw():
homeworktoset = Homework_To_Set.get()
#print (homeworktoset)
conn = sqlite3.connect('MyComputerScience.db')
c = conn.cursor()
homeworkID = c.execute("SELECT HWID FROM HomeworkInfo WHERE HomeworkName = ?", (homeworktoset, )).fetchone()
print (homeworkID)
c.execute("SELECT UserID FROM users WHERE ClassName = ?", (ClassName_SetHWR, ))
homeworksetlist = c.fetchall()
print (homeworksetlist)
for i in (homeworksetlist):
#x = i
#firstname, lastname = x.split(" ")
c.execute('insert INTO HomeworkSet (HWID, StudentID)VALUES(?,?);', ((homeworkID[0]), str(i)))
conn.commit()
Label(sethw, text = "Homework Set!", fg = "GREEN").place(relx=0.205, rely=0.445, height=34, width=97)
这是我使用的代码。您应该更改此行:
for i in (homeworksetlist):
致:
哪个变量显示为
('2A1910E919A84230BFC2A71111160CADE',)
?对我来说,这就像一个典型的游标返回的值。那么问题到底出在哪里呢?听起来你的迭代很好地解决了解包问题。我正在尝试删除括号和撇号,以便在将它插入下一个表HomeWorksetManagerfor i in(homeworksetlist)
tofor i in homeworksetlist
for i in homeworksetlist: