2017-06-02 1 views
-4

フラスコから推薦モデルを呼び出そうとしていますので、別のアプリケーション(java)で消費する応答を返します。このエラーを解決する方法はありますか? "NameError:グローバル名 'string'が定義されていません" python

def get_recomendation(strRange1,strRange2,top): 

     recomendacion = loaded_model.recommend(users=range(strRange1,strRange1),k=top) 

     #string = str(reco) 
     #print type(string) 
     global string  

     for reco in recomendacion: 
      string += str(reco) 

     return string 
+2

タイトルを修正し、問題の説明を追加してください。 –

+0

ループで文字列を作成するのではなく、 ''' .join(map(str、recommendations))' – user1685095

+0

コードが正しくフォーマットされていません。そして、あなたがしていることについてもっと多くの情報が必要です。 – Afflicted

答えて

0
global string 

自動的に変数stringに空の文字列を代入しません。単に関数内から変数をグローバルスコープに書き込むことができます。

string += str(reco) 

Pythonはにそれを拡張します:だからあなたが言うとき

string = string + str(reco) 

が、それは右側のstringが、それはおそらくstring + str(reco)を計算することはできませんので、エラーが何であるかを知りません'string' is not defined

関連する問題