組み込み開発のためのPython · レッスン 200 / 220

内包表記でデータを変換する

リスト・辞書内包表記を読みやすい範囲で使い、データ変換を簡潔にします。

内包表記は、既存のデータから新しいリストや辞書を作る記法です。短く書くことより、変換条件を読み手が追えることを優先します。

単純な変換と絞り込みに使う

要素ごとの単純な変換や、明確な条件による絞り込みは、内包表記に向いています。通信やファイルへのアクセスのような副作用を内包表記に埋め込むと、実行順や例外箇所が分かりにくくなるため避けます。

複雑になったら通常のループへ戻す

条件が何段も重なる、複数の状態を更新する、失敗時に個別対応が必要といった場合は、通常の`for`文の方が読みやすくなります。メモリに入りきらない大量データを扱う場合は、次の段階としてジェネレーターを検討します。

コード例

手元のPython環境に貼り付ける前に、使用しているPythonの版と対象ライブラリの対応を確認してください。

raw = [" 12 ", "7", "bad", "31"]
parsed = [int(value) for value in raw if value.strip().isdigit()]
labels = {value: f"ID-{value:03d}" for value in parsed}
print(parsed)
print(labels)

手を動かす課題

空文字を除いてログ行を整形する内包表記を作り、処理が複雑になったらfor文へ書き換えて比較しましょう。

参考資料

「3. 繰り返しとデータのまとまり」の章一覧へ