Python forでリスト(配列)を作る

ケース

forでリスト(配列)を作りたい


list = [i for i in range(10)]

Pythonでは、for i in range(10):という形以外にも、リストの中でforで繰り返し処理してそのままリストを作り出す方法があります。

list = [i for i in range(10)]
print(list)
# 出力結果
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

上記のプログラムは以下でも実装できます。

list = []
for i in range(10):
    list.append(i)  

しかし、同じ処理でありながら、1行で行うやり方 list = [i for i in range(10)] の方が一般的に処理速度が早いと言われています。

ただし、複雑なことを1行で行いすぎると可読性が悪くなりオススメされていないので、使いどころを見極めながら使っていくと良いでしょう。