foldrr's weblog

旧ブログ http://d.hatena.ne.jp/foldrr/

python のリスト内包表記が少し分かった

リスト内包表記は、初めて見たときは難しくてとても使えない、と思っていた。
でも最近、ようやく分かってきた。

  • 意味としてはリストを即値ではなく式で表現したもの。
  • 書式としてはリスト個々の要素 + for 構文 + if 構文なイメージ。
  • 目的としてはリストへ多用する操作を短く書くため。

リストに対して for + if で処理することが多いし、Python の場合、短く書いても以下のように 3 行以上になる。

for ...:
    if ...:
        do anything

これを 1行で書けるのは確かに便利。