# General Translation Python SDKs: declare_var
URL: https://generaltranslation.com/ja/docs/python/reference/functions/declare-var.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: General Translation Python で動的な値を翻訳対象外の変数として指定します。declare_var の API リファレンス。

翻訳対象外の変数とは、言語が変わっても変化しない動的な値です。ユーザー名、メールアドレス、件数など、Runtime でしか分からない値を [`t`](/docs/python/reference/functions/t) 呼び出し内に埋め込む場合は `declare_var` を使用します。

## 概要 [#overview]

値と省略可能なキーワード専用引数 `name` を指定して `declare_var` を呼び出します。戻り値は、その値を General Translation の変数マーカーとして埋め込む ICU の `{_gt_, select, ...}` 構文です。

```python
from gt_flask import declare_var  # または: from gt_fastapi import declare_var、または: from gt_i18n import declare_var

t(f"Signed in as {declare_var(email, name='email')}")
```

シグネチャ:

```python
declare_var(
    variable: str | int | float | bool | None,
    *,
    name: str | None = None,
) -> str
```

`gt_i18n` およびフレームワークパッケージで `generaltranslation.static` から再エクスポートされます。

## 仕組み [#how-it-works]

* **値のフォーマット。** `None` は空文字列になり、`bool` は `"true"`/`"false"` になり、それ以外の値は文字列化されます。結果はサニタイズされます。
* **マーカーの構築。** `{_gt_, select, other {value}}` を返し、`name` が指定されている場合は、必要に応じて `_gt_var_name {name}` 句も含まれます。
* **Runtime とビルド時。** Runtime の値に使用します。ビルド時に取りうる結果が有限個の値には、[`derive`](/docs/python/reference/functions/derive) を使用してください。埋め込まれた値は [`decode_vars`](/docs/python/reference/functions/decode-vars) で復元できます。

## パラメーター [#parameters]

| パラメーター                  | 説明                    | Type                                  | Optional | Default |
| ----------------------- | --------------------- | ------------------------------------- | -------- | ------- |
| [`variable`](#variable) | 翻訳対象外の変数として埋め込む値。     | `str \| int \| float \| bool \| None` | いいえ      | —       |
| [`name`](#name)         | キーワード専用の、人が読んでわかる変数名。 | `str`                                 | はい       | `None`  |

### `variable` [#variable]

**Type** `str | int | float | bool | None` · **必須**

埋め込む値です。`None` は空文字列として出力され、ブール値は小文字で出力されます。

### `name` [#name]

**Type** `str` · **任意** · **デフォルト** `None`

変数に付ける、人間が読めるキーワード専用のラベルです。指定した場合は、`_gt_var_name` 句として追加されます。

## 戻り値 [#returns]

**型** `str`

値を変数マーカーとして扱うための ICU の `{_gt_, select, ...}` 構文。

## 例 [#example]

```python
from gt_flask import t, declare_var

# 翻訳済みf-string内でRuntime値を保持する
message = t(f"{declare_var(name, name='name')} goes home")
```

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
