createDb = sqlite3.connect("hh.db")
queryCurs = createDb.cursor()
def createTable():
queryCurs.execute(''' CREATE TABLE maths
(id INTEGER PRIMARY KEY, userName TEXT, score INTERGER)''')
def addCust(userName,):
queryCurs.execute("""INSERT INTO maths (userName, score)
VALUES(?,?)""",(userName, score))
def main():
#createTable()
addCust("")
createDb.commit()
queryCurs.execute("SELECT * FROM maths")
title = [userName, class_name,"Score:", score,"Out of 10"]
k = 0
for i in queryCurs:
print ("\n")
for j in i:
print (title,[k]),
print (j)
if k < 3: k+=1
else: k = 0
queryCurs.close
if __name__ == "__main__":main()
结果=
[<built-in function id>, 'Jack', '10', 'Score:', 0, 'Out of 10'] [0]
5
[<built-in function id>, 'Jack', '10', 'Score:', 0, 'Out of 10'] [1]
[<built-in function id>, 'Jack', '10', 'Score:', 0, 'Out of 10'] [2]
0
我只想要它一次,ID也是一个整数。 还想知道我是否有办法整理输出?
新手所以请完整解释
答案 0 :(得分:0)
这些代码都没有按照您的想法行事。你永远不会从数据库查询中获得任何东西 - 为此你必须迭代queryCurs.fetchall()
。
您要打印的内容是一个列表,其中包含您之前定义的一些常量。它是循环的,因为你告诉它,for j in i: