所以我有一個try/except塊設置,這將經歷一個數據庫依賴於一定的條件:替換值不起作用?
try:
for searchnumber in itertools.count(0):
print searchnumber
c.execute("""SELECT words from searchterms where onstate = 1 AND progid = %d;""") % searchnumber
searchterms = (c.fetchall())
searchterms = [",".join(x) for x in searchterms]
print searchterms
except:
pass
出於某種原因,它不是迭代上的progid,其實,它不是甚至沒有分配給它的第一個值(0)。爲什麼會這樣?據我所知,%d應該searchnumber
的整數值
我對'c.execute()'表達式之外的'%searchnumber' * *感到困惑。它不應該在括號裏嗎? – kojiro 2012-07-12 03:12:12
我的天啊。我是一個白癡。 – 2012-07-12 03:14:20
這是一個完美的例子,說明爲什麼你**不應該使用**,除非它隱藏了TypeError。 – DSM 2012-07-12 03:14:26