【发布时间】:2014-04-06 13:57:39
【问题描述】:
c.execute("SELECT * FROM Student, Behaviour")
data = c.fetchall() #'data' is a tuple and cannot be altered
l = []
for i in data: #for individual records in the whole database do:
record = str(i)
record = record.replace("u'","")
record = record.replace("'", "")
record = record.replace('"', '')
record = record.replace("(","")
record = record.replace(")", "")
Formattedrecord = record.replace(","," -")
l.append(Formattedrecord)
这会返回错误:UnboundLocalError: local variable 'Formattedrecord' referenced before assignment 但是我不明白为什么,有人可以帮忙吗?
【问题讨论】:
-
缩进最后一行作为循环的一部分。你得到了
UnboundLocalError,因为data是空的,但如果它不是 空的,你只需将last 条目附加到l。 -
你为什么在这里把
record变成str(),然后把所有的引号都换掉?也许您想添加' - '.join(i)而不是。
标签: python list for-loop sqlite