利用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 字串,能夠在範本內評估表達式和方法呼叫:
<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中文網其他相關文章!