首頁 >後端開發 >Python教學 >如何動態評估 F 弦?

如何動態評估 F 弦?

Linda Hamilton
Linda Hamilton原創
2024-11-01 02:57:281089瀏覽

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 字串,能夠在範本內評估表達式和方法呼叫:

<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- 提供了全面的解決方案字串,簡化複雜程式碼庫中的範本處理。

以上是如何動態評估 F 弦?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn