Python: 変数の不要な繰り返し処理
たとえば文字 x を n 回 print するとき、以下のように書くと「i」が不使用の変数(Unused variable)として警告が出てしまう。
1 2 | for i in range (n): print x |
ループ変数を「_」にするのが最もシンプルなアイデアのようだ。
1 2 | for _ in range (n): print x |
ただし、対話型プロンプトにおいて、「_」は直前の処理結果を返す命令として定義されている。
1 2 3 4 | >>> 1 + 2 + 3 6 >>> _ 6 |
ループ変数とはいえ名前空間が上書きされてしまうため、マナーとして変数名に「_」を使うのは避けるべきということだ。
1 2 3 4 5 6 7 8 | >>> for _ in range ( 3 ): pass >>> _ 2 >>> 1 + 2 + 3 6 >>> _ 2 |
結局、使わない変数を定義しても『気にしない』のが現時点の最善らしい。
参考:
・Is it possible to implement a Python for range loop without an iterator variable?
http://stackoverflow.com/questions/818828/is-it-possible-to-implement-a-python-for-range-loop-without-an-iterator-variable
0 件のコメント:
コメントを投稿