Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menangguhkan Penilaian F-Strings dalam Python?

Bagaimana untuk Menangguhkan Penilaian F-Strings dalam Python?

Linda Hamilton
Lepaskan: 2024-11-01 15:43:02
asal
635 orang telah melayarinya

How to Defer Evaluation of F-Strings in Python?

Menangguhkan Penilaian F-Strings

Dalam Python, f-strings menawarkan cara ringkas untuk menjana rentetan berformat. Walau bagaimanapun, kadangkala ia berguna untuk menentukan templat di tempat lain dan mengimportnya sebagai rentetan statik. Untuk menilai dengan cekap rentetan statik ini sebagai rentetan f dinamik, kita memerlukan cara untuk menangguhkan penilaiannya.

Walaupun kaedah .format(**locals()) boleh digunakan, ia melibatkan pengembangan pembolehubah eksplisit. Untuk mengelakkan overhed ini, pertimbangkan strategi berikut:

<code class="python">def fstr(template):
    return eval(f'f&quot;&quot;&quot;{template}&quot;&quot;&quot;')</code>
Salin selepas log masuk

Fungsi ini mengambil rentetan templat statik dan membina rentetan f secara dinamik semasa masa jalan. Sebagai contoh, diberikan templat:

<code class="python">template = "The current name is {name}"</code>
Salin selepas log masuk

Kita boleh menilainya menggunakan:

<code class="python">print(fstr(template))  # Output: The current name is foo</code>
Salin selepas log masuk

Perhatikan bahawa kaedah ini juga menyokong ungkapan dalam kurung kurawal, seperti yang ditunjukkan oleh:

<code class="python">template = "The current name is {name.upper() * 2}"
print(fstr(template))  # Output: The current name is FOOFOO</code>
Salin selepas log masuk

Dengan menangguhkan penilaian f-strings menggunakan fungsi fstr(), pembangun boleh mengekalkan kejelasan kod dan memudahkan pengendalian templat dalam Python.

Atas ialah kandungan terperinci Bagaimana untuk Menangguhkan Penilaian F-Strings dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan