Post content
В Python 3.14 появится реализация PEP 750 и новый способ форматирования: t-strings. Это так называемые Template Strings. Синтаксис такой же как с f-strings, но форматирование происходит не сразу. Вместо строки создаётся объект Template, который внутри себя содержит исходную информацию, сырую строку (template.strings) и переменные (template.values). Это позволяет произвести дополнительную обработку данных перед форматированием, например для усиления безопасности. В примерах можно увидеть как строка с HTML кодом дополнтиельно обрабатывается чтобы избежать инъекции JS кода за счет экранирования служебных символов. Конечно, этим примером возможности не ограничивюатся. Более подробно про функционал будет понятно ближе к релизу в конце года. Сейчас доступно в сборках 3.14.0a7+ из этой ветки. Простой пример создания шаблона name = "World" template = t"Hello {name}!" Что является шорткатом для from string.templatelib import Template, Interpolation template = Template( "Hello ", Interpolation(value="World", expression="name"), "!" ) В обоих случаях объект получим идентичный print(isinstance(template, Template)) # True print(template.strings) # ("Hello ", "!") print(template.values) #(name,) Больше примеров ➡️ здесь #pep