![](/img/trans.png)
[英]Python : I'm unable to fix TypeError: 'str' object is not callable
[英]Python "TypeError: 'str' object is not callable" - I'm not using "str" in code
我收到一個 TypeError: 'str' object is not callable 在以下以“exists”開頭的代碼段中:
@app.route('/passwordLoginForm1', methods=['GET','POST'])
def passwordLoginForm1():
username = request.form['username']
password = request.form['password']
exists = db.get_passdetails(username,password)
if exists == 'true':
return render_template('pin.html')
else:
return render_template('passwordsLogin2.html')
這是 get_passdetails 供參考:
def get_passdetails(username,password):
cur=conn.cursor()
cur.execute("SELECT * FROM Password WHERE username = %s AND password = %s" (username, password))
details = cur.fetchone()
if details:
return 'true'
else:
return 'false
Python相對較新,因此將不勝感激
我相信錯誤實際上是在這個表達式中:
"SELECT * FROM Password WHERE username = %s AND password = %s" (username, password)
由於字符串和(...)
之間沒有運算符,因此它被解釋為對字符串的函數調用(由於字符串不是函數,因此自然會產生錯誤)。 你的意思是在兩者之間加上一個%
。
利用 ? 而不是 %s 並且不要忘記添加逗號,
cur.execute("SELECT * FROM Password WHERE username = ? AND password = ?" ,(username, password))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.