2017-05-25 69 views
0

我不知道什麼是錯的我的Python代碼:錯誤的蟒蛇 - 型「NoneType」對象沒有LEN()

geneid=request.args.get('geneid') 
sql=text('select * from INFO where name=:ident') 
genes=engine.execute(sql,ident=geneid).fetchone() 
params['objs']=genes 
if len(genes)==0: 
    flash('NO RESULTS') 
return render_template('info.html', **params) 

的錯誤信息是: 類型錯誤:類型的「對象NoneType 'has no len()

有什麼建議嗎?我想在查詢中沒有結果時顯示一條Flash消息。 我也嘗試過(但沒有工作):

geneid=request.args.get('geneid') 
sql=text('select * from INFO where name=:ident') 
genes=engine.execute(sql,ident=geneid).fetchone() 
params['objs']=genes 
if no genes: 
    flash('NO RESULTS') 
return render_template('info.html', **params) 
+0

完整的錯誤消息肯定包含行號。這可能是一個重要的暗示,哪裏出了問題,你不覺得嗎? – jasonharper

+0

我沒有注意到它,很好的建議。謝謝。 – Paul

回答

5

您正試圖獲得len(None)。你想要的是

if genes is None: 
    flash('NO RESULTS') 

注: Python沒有一個no關鍵字。最接近的是not運營商。

相關問題