F 文字列を利用して動的テキストを作成する場合、.format(**locals()) メソッドを使用すると不便な場合があります外部ソースからテンプレートを取得するとき。したがって、文字列を f 文字列として解釈するメカニズムが必要になります。
これに対処するには、fstr と呼ばれる簡潔な関数を使用できます。
<code class="python">def fstr(template): return eval(f'f"""{template}"""')</code>
この関数は、テンプレート文字列を f 文字列に直接解釈し、次のようなコードを許可します:
<code class="python">template_a = "The current name is {name}" names = ["foo", "bar"] for name in names: print(fstr(template_a))</code>
このコードは、目的の出力を生成します:
The current name is foo The current name is bar
重要なことに、fstr 関数はすべての機能を保持します。 f-string を使用して、テンプレート内の式とメソッド呼び出しの評価を有効にします:
<code class="python">template_b = "The current name is {name.upper() * 2}" for name in names: print(fstr(template_b))</code>
出力:
The current name is FOOFOO The current name is BARBAR
この手法は、f-string を動的に解釈および評価するための包括的なソリューションを提供します。文字列を使用して、複雑なコードベースでのテンプレートの処理を簡素化します。
以上がF 文字列を動的に評価するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。