# python: t URL: https://generaltranslation.com/ja/docs/python/api/t.mdx --- title: t description: t 翻訳関数のAPIリファレンス --- ## 概要 `t` 関数は、ICU MessageFormat 文字列を翻訳し、変数を補間します。 現在のロケールを参照し、ハッシュを使ってキャッシュ済みの翻訳を取得したうえで、変数を補間します。 翻訳が見つからない場合は、ソース文字列にフォールバックします。 ```python from gt_flask import t # または from gt_fastapi import t message = t("Hello, {name}!", name="World") ``` ## リファレンス ### パラメータ ### GT オプション (`**kwargs` で渡す) | オプション | 型 | 説明 | | ------------ | ----- | ----------------------------- | | `_context` | `str` | 同じソーステキストの翻訳を区別するための追加コンテキスト。 | | `_id` | `str` | 翻訳エントリのカスタム識別子。 | | `_max_chars` | `int` | 出力の最大文字数。 | ### 戻り値 `str` — 翻訳され、補間された文字列。 *** ## 例 ### 基本的な翻訳 ```python t("Hello, world!") ``` ### 変数を使う場合 ```python t("Hello, {name}!", name="Alice") ``` ### コンテキスト付き ```python t("Bank", _context="financial institution") t("Bank", _context="river bank") ``` ### f-string と `declare_var` を使う場合 Python の f-string は `t` と自然に使えます。変数を [`declare_var`](/docs/python/api/declare-var) で包むだけです: ```python from gt_flask import t, declare_var # i18n適用前: message = f"{name} goes home" # i18n適用後 — t() と declare_var() でラップするだけ: message = t(f"{declare_var(name, name='name')} goes home") ``` ### 字符制限付き ```python t("This is a very long message that might need truncation", _max_chars=20) ``` *** ## 注意事項 * `t` を使用するには、事前に [`initialize_gt`](/docs/python/api/initialize-gt) を呼び出しておく必要があります。 * 現在のロケールがデフォルトロケールと一致する場合、翻訳の検索処理は行われず、補間のみが実行されます。 * 変数は ICU MessageFormat 構文 (例: `{name}`、`{count, plural, one {# item} other {# items}}`) を使って補間されます。