我现在对这个问题感到困惑。limit在默认情况下是none,但是如果我在unitest中测试它,并询问特定数量的注释,它会显示类型不匹配。我知道"int“不是正确的术语。我只是说限制应该是一个整数。什么是正确的输入方式取决于最大限度是什么。
def list_comments(db, limit=None): limit = "int"
limit = "int"
cur = db.cursor()
cur.execute("SELECT id, comment FROM comments ORDER BY id DESC LIMIT ?", (limit,))
results = cur.fetchall()
print results
return results发布于 2013-04-18 18:22:15
去掉函数后面的limit = "int",limit参数默认为0,%s使用占位符;
def list_comments(db, limit=0):
cur = db.cursor()
cur.execute("SELECT id, comment FROM comments ORDER BY id DESC LIMIT %s", (str(limit)))
results = cur.fetchall()
print results
return results如果不需要逗号,也可以将其删除;(limit,)。
我故意将limit值解析为字符串(如果它真的是一个整数,您可以先检查它),使其始终与%s占位符匹配。
https://stackoverflow.com/questions/16080279
复制相似问题