洗練された解決策を思いつくことができない、かなり単純な問題に遭遇しました。
フォーマットに使用する置換でstr.format
渡される関数を使用して文字列を作成しています。dict
文字列を作成し、値が渡された場合は値でフォーマットし、それ以外の場合は空白のままにします。
元
kwargs = {"name": "mark"}
"My name is {name} and I'm really {adjective}.".format(**kwargs)
戻るべき
"My name is mark and I'm really ."
を投げる代わりにKeyError
(何もしないとこうなります)。
恥ずかしいことに、私はこの問題に対する洗練されていない解決策さえ思いつきません。を使用しないだけでこれを解決できるstr.format
と思いますが、可能であれば、組み込み (ほとんどの場合、私が望むことを行います) を使用したいと思います。
注: どのキーが使用されるかは事前にわかりません。誰かがキーを含んでいて、それを kwargs dict に入れていない場合、私は優雅に失敗しようとしています。どのキーが検索されるかが 100% の精度でわかっていれば、すべてのキーを入力して完了です。