Pythonのリスト内包表記
学んだこと
リスト内包表記を使うと、for ループで作るリストを1行で書ける。
# ふつうのfor文
squares = []
for n in range(5):
squares.append(n * n)
# リスト内包表記
squares = [n * n for n in range(5)]
条件をつける
if を後ろに付けると絞り込みができる。
evens = [n for n in range(10) if n % 2 == 0]
気づき
- 短く書けるが、複雑になったら通常の
for文のほうが読みやすい - 結果が大きいときはジェネレータ式(
())も検討する