2016-05-01 11 views
0

私はPython 2を使用しています。私のコードで何が問題なのか分かりません。間違ったメッセージは "割り当て前に参照されたローカル変数y"です。しかし変数yは参照の前に割り当てられ、変数xには問題はありません。あなたはそれを把握するのに役立つでしょうか? 4 % 3 != 0yが定義されていますが、次の行で使用されていない間割り当て前にローカル変数yが参照されています

def dyn_seq(n): 
     C=[0,0,1,1] 
     for i in range(4,n+1): 
      z=C[i-1]+1 
      if i % 2==0: 
       x=C[i/2]+1 
      if i % 3==0: 
       y=C[i/3]+1 
      minu=min(x,y,z) 
      C.append(minu) 
     return C 
+0

正常に実行できます。より多くの情報を提供できますか? – WeiYuan

+0

フルコードとエラーメッセージ –

+0

を表示してください。問題が重複している可能性があります。 http://stackoverflow.com/questions/18002794/local-variable-referenced-before-assignment-in-python – WeiYuan

答えて

1

あなたはモジュロ除算を行っていると、実行中の変数は4 4 % 2 == 0xから始まるが、定義されます。

+0

ありがとう!それがまさに問題です! –

関連する問題