str.format_map() マッピングオブジェクトでフォーマット
最終更新:2026-09-22
str.format_map() マッピングオブジェクトでフォーマット
str.format_map(mapping) は mapping オブジェクト(**kwargs の代わり)で文字列をフォーマットする。
| カテゴリ | 文字列メソッド |
|---|---|
| 種類 | 組み込み型メソッド |
| Python バージョン | all |
📝 構文
str.format_map(mapping)
⚙️ 引数
| mapping 必須 | A mapping object supplying field values, like **kwargs. |
|---|
戻り値:str. A new string with placeholders filled from the mapping.
元のオブジェクトを変更するか:いいえ(新しいオブジェクトを返す)
💥 例外
KeyError— Raised when a placeholder field name is missing from the mapping.ValueError— Raised for an invalid format specifier.
▶ 例
下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:
実行結果:
Alice is 30
💡 関連するケース
さらに多くのケースは近日公開予定です。
❓ よくある質問
Qformat_map() と format(**dict) の違いは何ですか?
Aformat_map() はマッピングオブジェクトを直接受け取り、キーワード引数に展開しません。__missing__ を実装した defaultdict などの dict サブクラスと組み合わせると、キーが欠けたときに既定値を供給できます。
Qキーが存在しない場合はどうなりますか?
AKeyError が発生します。カスタムの dict サブクラスで __missing__ を実装すると既定値を返せます。
Qマッピングでないオブジェクトを渡すとどうなりますか?
A例外が発生します(オブジェクトがルックアップをサポートしない場合は TypeError または AttributeError)。引数はフィールド値のルックアップ機能を提供する必要があります。