# General Translation Python SDKs: Détecter le paramètre régional de la requête URL: https://generaltranslation.com/fr/docs/python/guides/detecting-locale.mdx --- title: Détecter le paramètre régional de la requête description: Comment déterminer automatiquement le paramètre régional de chaque requête, ou selon votre propre logique, dans General Translation pour Python. related: links: - /docs/python/guides/translating-strings - /docs/python/guides/configuring - /docs/python/guides/declaring-variables - /docs/python/guides/storing-translations --- Chaque appel à [`t`](/docs/python/reference/functions/t) traduit dans le paramètre régional de la requête en cours. [`initialize_gt`](/docs/python/reference/functions/initialize-gt) configure la détection du paramètre régional pour vous ; vous pouvez utiliser le comportement par défaut ou fournir votre propre callback. ## Utiliser la détection par défaut [#default] Par défaut, le SDK lit l’en-tête `Accept-Language`, analyse ses valeurs de qualité et choisit la meilleure correspondance parmi les paramètres régionaux configurés, avec repli sur le paramètre régional par défaut. Flask le fait dans un hook `before_request` ; FastAPI le fait dans un middleware HTTP. Aucune configuration supplémentaire n’est nécessaire. Récupérez le paramètre régional résolu à n’importe quel endroit d’une requête avec [`get_locale`](/docs/python/reference/functions/get-locale). ```python from gt_flask import get_locale # ou : from gt_fastapi import get_locale get_locale() ``` ## Fournir une détection personnalisée [#custom] Pour tenir compte d’un choix explicite — paramètre de requête, cookie ou préfixe de chemin — transmettez un callback `get_locale` à `initialize_gt`. Un callback personnalisé remplace entièrement la détection `Accept-Language` ; elle n’est pas utilisée si vous fournissez le vôtre. ```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) ``` La valeur que vous renvoyez est stockée telle quelle pour la requête. Si votre callback renvoie une valeur falsy comme `None`, le paramètre régional utilisé sera le paramètre régional par défaut configuré (et non `Accept-Language`) ; renvoyez donc un contenu de secours explicite si vous souhaitez un comportement différent. *Remarque : contrairement à la détection `Accept-Language` intégrée, la valeur renvoyée par un callback personnalisé n’est pas revalidée par rapport aux `locales` configurées. Renvoyez un paramètre régional pris en charge, ou gérez vous-même les valeurs non prises en charge.* ## Next steps - /docs/python/guides/translating-strings - /docs/python/guides/configuring - /docs/python/guides/declaring-variables - /docs/python/guides/storing-translations