ホームページ  >  記事  >  バックエンド開発  >  F 文字列を動的に評価するにはどうすればよいですか?

F 文字列を動的に評価するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-01 02:57:281001ブラウズ

How to Dynamically Evaluate F-strings?

F 文字列を動的に評価する

F 文字列を利用して動的テキストを作成する場合、.format(**locals()) メソッドを使用すると不便な場合があります外部ソースからテンプレートを取得するとき。したがって、文字列を f 文字列として解釈するメカニズムが必要になります。

これに対処するには、fstr と呼ばれる簡潔な関数を使用できます。

<code class="python">def fstr(template):
    return eval(f'f&quot;&quot;&quot;{template}&quot;&quot;&quot;')</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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。