Les chaînes F offrent un moyen pratique de formater des chaînes en Python. Cependant, lorsque vous travaillez avec des modèles ou des fichiers dynamiques, il est nécessaire de reporter ou de différer l'évaluation des f-strings. Cela pose un défi car les chaînes statiques avec des balises de formatage ne peuvent pas être directement interprétées par l'interprète.
Une solution robuste à ce problème implique l'utilisation d'une fonction personnalisée qui évalue une chaîne comme une f-string. La fonction suivante sert à cet effet :
<code class="python">def fstr(template): return eval(f'f"""{template}"""')</code>
Avec la fonction fstr, vous pouvez reporter l'évaluation de la chaîne f comme suit :
<code class="python">template_a = "The current name is {name}" names = ["foo", "bar"] for name in names: print(fstr(template_a)) # Output: The current name is foo # The current name is bar</code>
Remarquez que le La fonction fstr évalue correctement les expressions dans la chaîne, telles que name.upper() * 2 :
<code class="python">template_b = "The current name is {name.upper() * 2}" for name in names: print(fstr(template_b)) # Output: The current name is FOOFOO # The current name is BARBAR</code>
Cette approche fournit un moyen concis et pratique de gérer l'évaluation de la chaîne f lorsque cela est nécessaire, permettant un formatage dynamique de la chaîne dans votre base de code.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!