# General Translation Python SDKs: Rilevamento dell'impostazione regionale della richiesta URL: https://generaltranslation.com/it/docs/python/guides/detecting-locale.mdx --- title: Rilevamento dell'impostazione regionale della richiesta description: Come determinare automaticamente l'impostazione regionale di ogni richiesta o tramite una logica personalizzata in General Translation per Python. related: links: - /docs/python/guides/translating-strings - /docs/python/guides/configuring - /docs/python/guides/declaring-variables - /docs/python/guides/storing-translations --- Ogni chiamata a [`t`](/docs/python/reference/functions/t) traduce nell'impostazione regionale della richiesta corrente. [`initialize_gt`](/docs/python/reference/functions/initialize-gt) configura automaticamente il rilevamento dell'impostazione regionale; puoi usare quello predefinito o fornire una tua callback. ## Usa il rilevamento predefinito [#default] Per impostazione predefinita, l’SDK legge l'header `Accept-Language`, ne analizza i pesi di qualità e seleziona la corrispondenza migliore tra le impostazioni regionali configurate, usando come fallback l'impostazione regionale predefinita. Flask lo fa in un hook `before_request`; FastAPI lo fa nel middleware HTTP. Non è necessaria alcuna configurazione aggiuntiva. Leggi l'impostazione regionale determinata in qualsiasi punto della richiesta con [`get_locale`](/docs/python/reference/functions/get-locale). ```python from gt_flask import get_locale # oppure: from gt_fastapi import get_locale get_locale() ``` ## Configurare un rilevamento personalizzato [#custom] Per rispettare una scelta esplicita — un parametro di query, un cookie o un prefisso del percorso — passa una callback `get_locale` a `initialize_gt`. Una callback personalizzata sostituisce completamente il rilevamento basato su `Accept-Language`; se ne fornisci una, non viene usato altro. ```python def detect_locale(request): return request.args.get("lang") or request.cookies.get("locale") or "en" initialize_gt(app, default_locale="en", locales=["es", "fr"], get_locale=detect_locale) ``` ```python def detect_locale(request): return request.query_params.get("lang") or request.cookies.get("locale") or "en" initialize_gt(app, default_locale="en", locales=["es", "fr"], get_locale=detect_locale) ``` Il valore restituito viene memorizzato così com'è per la richiesta. Se la callback restituisce un valore falsy come `None`, viene usata l'impostazione regionale predefinita configurata (non `Accept-Language`), quindi restituisci un fallback esplicito se vuoi un comportamento diverso. *Nota: A differenza del rilevamento `Accept-Language` integrato, il valore restituito da una callback personalizzata non viene nuovamente validato rispetto ai `locales` configurati. Restituisci un'impostazione regionale supportata oppure gestisci tu stesso i valori non supportati.* ## Next steps - /docs/python/guides/translating-strings - /docs/python/guides/configuring - /docs/python/guides/declaring-variables - /docs/python/guides/storing-translations