Python

pythonの繰り返し処理における変数名"_"(アンダースコア)

未来電子テクノロジーでインターンをしているtakosです。

プログラミング初心者であるため、内容に誤りがあるかもしれません。

もし、誤りがあれば修正するのでどんどん指摘してください。


疑問の始まり

あるサイトの問題を解いている際に、pythonの繰り返し処理において"_"(アンダースコア)を使った文が出てきました。

今まで見たことがなかったので、調べてみました。

すると、

「for _ in range(5)」 は 「for i in range(5)」と書けることが分かりました。

変数の代わりに"_"(アンダースコア)を使っているようです。

しかし、この説明だけでは、"_"(アンダースコア)を使う利点が、

「??????」

状態だったので詳しく考えてみました。


"_"(アンダースコア)を使うタイミング

上記の通り、アンダースコアは、変数の代わりに使うことができます。

よって、

for i in range(5):

print("Hello")

for _ in range(5):
print("Hello")

この二つのコードの結果は同じです。

よって、forループの中で格納した値を使用していない(つまり、今回の場合だと、for文で実行する「print("Hello")」に"i"を用いていない)場合は"_"(アンダースコア)を使えると言えるでしょう。


追記

今回挙げたアンダースコアの利用は、pythonに限らず、「使わない値を代入するための変数」を示す慣習のようです。