# General Translation Python SDKs: hash_message URL: https://generaltranslation.com/it/docs/python/reference/functions/hash-message.mdx --- title: hash_message description: Calcola l'hash di una stringa ICU MessageFormat per la ricerca delle traduzioni in General Translation Python. Riferimento API per hash_message. --- Calcola l'hash di una stringa ICU MessageFormat nella chiave esadecimale usata per cercarne la traduzione. È lo stesso hash che [`t`](/docs/python/reference/functions/t) calcola internamente, quindi puoi usarlo per creare o ispezionare un dizionario di traduzione. ## Panoramica [#overview] Chiama `hash_message` con una stringa sorgente e gli argomenti keyword-only facoltativi `context`, `id` e `max-chars`. Indicizza le variabili del messaggio, quindi ne calcola l'hash con `data_format="ICU"`. ```python from gt_i18n import hash_message h = hash_message("Hello, world!") ``` Firma: ```python hash_message( message: str, *, context: str | None = None, id: str | None = None, max_chars: int | None = None, ) -> str ``` Importa `hash_message` da `gt_i18n`. I pacchetti del framework non lo riesportano. ## Come funziona [#how-it-works] * **Indicizza le variabili.** Per prima cosa normalizza il messaggio indicizzando le variabili, così i messaggi equivalenti generano lo stesso hash. * **Hash.** Calcola l'hash del messaggio normalizzato insieme a `context`, `id` e `max_chars`, in linea con l'implementazione JS di gt-i18n. Modificandone anche solo uno si ottiene un hash diverso. ## Parametri [#parameters] | Parametro | Descrizione | Tipo | Facoltativo | Predefinito | | ------------------------- | ------------------------------------------------- | ------------- | ----------- | ----------- | | [`message`](#message) | La stringa sorgente in formato ICU MessageFormat. | `str` | No | — | | [`context`](#context) | Stringa di contesto per la disambiguazione. | `str \| None` | Sì | `None` | | [`id`](#id) | Identificatore esplicito del messaggio. | `str \| None` | Sì | `None` | | [`max_chars`](#max-chars) | Limite massimo di caratteri. | `int \| None` | Sì | `None` | ### `message` [#message] **tipo** `str` · **Obbligatorio** La stringa sorgente in formato ICU MessageFormat di cui calcolare l'hash. ### `context` [#context] **Tipo** `str | None` · **Facoltativo** · **Predefinito** `None` Contesto facoltativo (l'opzione `_context` in `t`), usato per distinguere tra testi sorgente identici. ### `id` [#id] **tipo** `str | None` · **Facoltativo** · **Predefinito** `None` Identificatore esplicito opzionale del messaggio (opzione `_id` in `t`). ### `max_chars` [#max-chars] **tipo** `int | None` · **facoltativo** · **Predefinito** `None` Vincolo opzionale sul numero massimo di caratteri (l'opzione `_max_chars` in `t`). ## Valore restituito [#returns] **Tipo** `str` Una stringa hash esadecimale utilizzata come chiave di ricerca per la traduzione. ## Esempio [#example] ```python from gt_i18n import hash_message # Costruisci un dizionario di traduzione indicizzato per hash translations = { hash_message("Hello, world!"): "Hola, mundo!", } ```