# General Translation Python SDKs: t
URL: https://generaltranslation.com/it/docs/python/reference/functions/t.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Traduce e interpola una stringa ICU MessageFormat con General Translation in Python. Riferimento API per t.

Traduce e interpola una stringa ICU MessageFormat nell&#39;impostazione regionale attiva della richiesta. `t` è la principale funzione di traduzione rivolta all&#39;utente.

## Panoramica [#overview]

Chiama `t` passando una stringa sorgente e le eventuali variabili di interpolazione come argomenti con nome. Restituisce la stringa tradotta e interpolata per l&#39;impostazione regionale corrente; se non trova alcuna traduzione, restituisce la stringa sorgente interpolata.

```python
from gt_flask import t  # oppure: from gt_fastapi import t, oppure: from gt_i18n import t

message = t("Hello, {name}!", name="World")
```

Firma:

```python
t(message: str, **kwargs: object) -> str
```

*Nota: `t` legge il manager attivo, quindi [`initialize_gt`](/docs/python/reference/functions/initialize-gt) (o [`set_i18n_manager`](/docs/python/reference/functions/set-i18n-manager)) deve essere eseguito prima. In caso contrario, viene generato un `RuntimeError`.*

## Come funziona [#how-it-works]

* **Controllo dell&#39;impostazione regionale.** Legge l&#39;impostazione regionale corrente dal manager. Se questa impostazione regionale non richiede traduzione (ad esempio, perché corrisponde all&#39;impostazione regionale predefinita), salta il lookup e si limita a interpolare il sorgente.
* **Ricerca dell&#39;hash.** Altrimenti calcola l&#39;hash del messaggio (con `_context`, `_id` e `_max_chars`) e recupera dalla cache in memoria la traduzione memorizzata per l&#39;impostazione regionale. La cache è sincrona, quindi la traduzione deve essere già stata caricata: vedi [caricamento anticipato](/docs/python/guides/configuring#preload).
* **Interpolazione.** Se trova una traduzione, la interpola con ICU MessageFormat usando le tue variabili e il sorgente come `__fallback` per risolvere le variabili `_gt_` dichiarate.
* **Fallback.** Se non viene trovata alcuna traduzione, interpola e restituisce la stringa sorgente.

## Parametri [#parameters]

| Parametro             | Descrizione                                         | Type         | Facoltativo | Predefinito |
| --------------------- | --------------------------------------------------- | ------------ | ----------- | ----------- |
| [`message`](#message) | La stringa sorgente nel formato ICU MessageFormat.  | `str`        | No          | —           |
| [`kwargs`](#kwargs)   | Variabili di interpolazione e opzioni GT riservate. | keyword args | Sì          | —           |

### `message` [#message]

**Tipo** `str` · **Obbligatorio**

La stringa sorgente in formato ICU MessageFormat da tradurre e interpolare.

### `kwargs` [#kwargs]

**Tipo** argomenti keyword · **Facoltativo**

Variabili di interpolazione corrispondenti ai segnaposto ICU, oltre a queste opzioni GT riservate, che vengono escluse dall&#39;interpolazione e incluse nell&#39;hash del messaggio:

* `_context` (`str`) — contesto aggiuntivo per distinguere traduzioni con lo stesso testo sorgente.
* `_id` (`str`) — un identificatore personalizzato per la voce di traduzione.
* `_max_chars` (`int`) — lunghezza massima in caratteri applicata all&#39;output.

*Una variabile definita dall&#39;utente il cui nome inizia con un singolo trattino basso (ad esempio `_name`) viene comunque trattata come variabile di interpolazione; solo le tre chiavi sopra sono riservate.*

## Valore restituito [#returns]

**Tipo** `str`

La stringa tradotta e interpolata, oppure la stringa sorgente interpolata se non è disponibile alcuna traduzione.

## Esempi [#examples]

```python
# Traduzione semplice
t("Hello, world!")
```

```python
# Con variabili
t("Hello, {name}!", name="Alice")
```

```python
# Con contesto per disambiguare testi sorgente identici
t("Bank", _context="financial institution")
t("Bank", _context="river bank")
```

```python
# Con f-string e declare_var — racchiudi i valori dinamici per preservarli
from gt_flask import t, declare_var

# Prima dell'i18n:
message = f"{name} goes home"

# Dopo l'i18n — racchiudi con t() e declare_var():
message = t(f"{declare_var(name, name='name')} goes home")
```

```python
# Con un limite di caratteri
t("This is a very long message that might need truncation", _max_chars=20)
```

## Sitemap

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