# General Translation Python SDKs: decode_vars URL: https://generaltranslation.com/ru/docs/python/reference/functions/decode-vars.mdx --- title: decode_vars description: Заменяет маркеры переменных General Translation в строке на их значения в Python. Справочник API для decode_vars. --- Заменяет маркеры переменных `{_gt_, select, other {value}}` в строке ICU на содержащиеся в них значения. Используйте это, чтобы восстановить обычную заполненную строку из строки, созданной с помощью [`declare_var`](/docs/python/reference/functions/declare-var). ## Обзор [#overview] Передайте в `decode_vars` строку ICU, которая может содержать маркеры переменных General Translation. Функция возвращает строку, в которой каждый маркер заменён закодированным в нём значением. ```python from gt_i18n import declare_var, decode_vars marked = f"Signed in as {declare_var('a@b.com', name='email')}" decode_vars(marked) # "Signed in as a@b.com" ``` Сигнатура: ```python decode_vars(icu_string: str) -> str ``` Реэкспортируется из `generaltranslation.static` в `gt_i18n` и пакетах фреймворка. ## Как это работает [#how-it-works] * **Быстрый путь.** Если `string` не содержит маркера `_gt_`, она возвращается без изменений. * **Разворачивание маркеров.** Выполняется обход ICU AST: находятся неиндексированные `select` с `_gt_`, и каждый из них заменяется значением из ветки `other` (пустой `string`, если она отсутствует). ## Параметры [#parameters] | Параметр | Описание | Тип | Необязательный | По умолчанию | | --------------------------- | --------------------------------------------------------------------- | ----- | -------------- | ------------ | | [`icu_string`](#icu-string) | Строка ICU MessageFormat, которая может содержать маркеры переменных. | `str` | Нет | — | ### `icu_string` [#icu-string] **Тип** `str` · **Обязательно** Строка ICU MessageFormat, которая может содержать маркеры переменных General Translation. ## Возвращает [#returns] **Тип** `str` Строка, в которой маркеры переменных заменены соответствующими встроенными значениями. ## Пример [#example] ```python from gt_i18n import declare_var, decode_vars marked = f"You have {declare_var('5', name='count')} messages" decode_vars(marked) # "You have 5 messages" ```