for i in range(10):
s = 5
for j in range(10):
s = min(s)
上記のコードは、IntelliJの2行目の警告としてこの質問のタイトルを示しています。"再宣言された上記の使用法を除いて定義済み"
CFGではネストされたループのために、おそらく2つの連続した書き込み(間に読み込みなし)がs
にあるため、警告が表示されることは間違いありません。今まで私は警告を無視していましたが、安全な側になるためには私の仮説の確認を求めています。
。 IDEはこれを行う理由がないことを指摘しています –
これは合理的な仮定のようです。 's = 5'の後に' for'ループを実行するので、そのコードは冗長です。空のリストのようなものを列挙していた場合は、sを初期化するための正当な理由があります(それでも 'else'節が良いでしょう)が、ここではありません。 – tdelaney