ループ内の場合、オブジェクトをインスタンス化して、ループの後続の反復中に操作し、ループのスコープを離れたときに引き続き使用できますか?
これは私がうまくいくと思ったものの簡単な例です:
>>> for i in range(2):
... r = [] if r is None else r
... r.append[i]
...
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
NameError: name 'r' is not defined
そして、これが NameError 例外を使用した 2 回目の試みです。
>>> for i in range(2):
... try:
... r = r
... except NameError:
... r = []
... r.append(i)
...
>>>
私がやろうとしていることが実際には禁止されているのではないかと思いますが、なぜそうなるのかわかりません。
誰かが私のためにこれに光を当てることができますか?
編集:
したがって、2 番目の方法は機能しますが、非常に長くなります。手っ取り早い方法はありますか?