TGViewer
Реальный Python Реальный Python @python_real · 3.64K subscribers
Post #1000 1.52K
Python 3.14. T-строки в Python: новый способ работы со строками?

Python предлагает множество способов создания строк — от обычных строк до f-строк и raw-строк. Но начиная с Python 3.12, появляется новый способ: t-строки. Это экспериментальный синтаксис, предлагаемый для улучшения интернационализации (i18n) строк.

В этом посте мы кратко рассмотрим:

🔘 Что такое t-строки?
🔘Зачем они нужны?
🔘Как их использовать?

Что такое t-строки?

t"..." — это новый синтаксис строк, похожий на f-строки, но предназначенный для упрощения перевода строк. Они позволяют использовать интерполяцию переменных и одновременно автоматически отмечать строку как подлежащую переводу.


name = "Алиса"
print(t"Привет, {name}!")


Такой синтаксис эквивалентен:


from gettext import gettext as _
name = "Алиса"
print(_("Привет, {name}!").format(name=name))


Зачем это нужно?

В больших проектах часто нужно поддерживать несколько языков. В Python это обычно делается через gettext, где строки передаются в функцию _() и затем интерполируются вручную:


print(_("Привет, {name}!").format(name=name))


Но такой подход:

- неявный,
- подвержен ошибкам (особенно при интерполяции),
- не всегда дружелюбен к линтерам и инструментам сборки переводов.

t-строки делают этот процесс более чистым и читаемым.

Как это работает?

t-строки являются экспериментальной функцией в Python 3.12, и для их использования нужно включить feature flag:


from __future__ import tstrings


Полный пример:


from __future__ import tstrings

name = "Алиса"
print(t"Привет, {name}!")


Это даст тот же результат, что и с gettext, но с более читаемым и лаконичным синтаксисом.

Совместимость и текущее состояние

Пока t-строки находятся в стадии эксперимента. Они могут измениться или быть удалены в будущих релизах. Если вы работаете с интернационализацией и переводами — следите за этой фичей. Она может значительно упростить жизнь в будущем.

https://realpython.com/python-t-strings/

#python

👉 @python_real
  • 👍 4
More from @python_real
  1. Sep 22, 2026🔴 Тестовый собес на Middle Python с разработчиком из Яндекса завтра вечером! [+ разбор 50…
  2. Sep 22, 2026📊 Статистика в Python: с чего начать анализ данных Среднее значение может скрыть важную д…
  3. Sep 21, 2026🐍 В Python 3.15 появится frozendict - словарь, который нельзя изменить Это встроенный тип…
  4. Sep 1, 2026🔍Тестовое собеседование на Middle Python с разработчиком из Авито завтра вечером Уже завт…
  5. Sep 1, 2026🐍 Асинхронное программирование в Python: от генераторов до asyncio Почему обычная програм…
  6. Aug 24, 2026🐍 Как использовать Claude Code для разработки и отладки проектов на Python Real Python оп…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →