# General Translation Python SDKs: 快速入门
URL: https://generaltranslation.com/zh/docs/python/quickstart.mdx
---
title: 快速入门
description: 安装 General Translation Python SDK,并为你的第一个 Flask 或 FastAPI 应用添加翻译。
related:
links:
- /docs/python/guides/translating-strings
- /docs/python/guides/detecting-locale
- /docs/python/guides/declaring-variables
- /docs/python/guides/storing-translations
---
General Translation Python SDK 可为 Flask 和 FastAPI 应用中的面向用户的字符串提供翻译。你只需在应用中初始化一次,然后在路由中用 [`t`](/docs/python/reference/functions/t) 函数包装字符串,它就会将其翻译为当前请求的区域设置。
为你使用的框架安装对应的集成:Flask 使用 `gt-flask`,FastAPI 使用 `gt-fastapi`。两者都基于共享的 `gt-i18n` Runtime 构建,你也可以在非框架项目中直接使用它。
Python SDK **仍处于实验阶段且不稳定**——`gt-i18n`、`gt-flask` 和 `gt-fastapi` 目前均为 0.3.0 版本,后续可能会有破坏性变更。它要求 Python 3.10 或更高版本。
## Python SDK 的作用 [#overview]
该 SDK 提供:
* 使用 `t` 进行**字符串翻译**,并支持 ICU 消息语法。
* 从 `Accept-Language` header 检测**按请求的区域设置检测**,或使用你自己的逻辑。
* 通过 [`derive`](/docs/python/reference/functions/derive) 处理**有限变体**,并通过 [`declare_var`](/docs/python/reference/functions/declare-var) 处理不可翻译的值。
* 通过 **CDN 或本地方式交付**由 [General Translation CLI](/docs/cli/quickstart) 生成的翻译。
## 快速入门 [#quickstart]
安装该集成,添加配置文件,在你的应用中完成初始化,并翻译一个字符串。
### 1. 安装集成组件
```bash
pip install gt-flask
```
```bash
pip install gt-fastapi
```
### 2. 配置你的区域设置
在项目根目录下创建 `gt.config.json`,填入你的项目 ID 和 locales。各个键的说明请参阅[配置参考](/docs/python/reference/config)。
```json title="gt.config.json"
{
"projectId": "your-project-id",
"defaultLocale": "en",
"locales": ["es", "fr"]
}
```
### 3. 在应用中初始化
在启动时调用一次 `initialize_gt(app)`。它会读取 `gt.config.json`、注册按请求的区域设置检测,并预加载翻译。无需传入 API Key 参数——CDN 加载使用 `project_id` 和 `cache_url`。
```python title="app.py"
from flask import Flask
from gt_flask import initialize_gt, t, get_locale
app = Flask(__name__)
initialize_gt(app)
@app.route("/")
def index():
return {"message": t("Hello, world!"), "locale": get_locale()}
```
```python title="main.py"
from fastapi import FastAPI
from gt_fastapi import initialize_gt, t, get_locale
app = FastAPI()
initialize_gt(app)
@app.get("/")
def index():
return {"message": t("Hello, world!"), "locale": get_locale()}
```
### 4. 使用变量翻译
使用 ICU 占位符,并以关键字参数形式传入值。
```python
t("Hello, {name}!", name="Alice")
```
### 5. 生成翻译
在部署前,使用 [General Translation CLI](/docs/cli/quickstart) 翻译你的内容,以便在运行时提供翻译。
```bash
gt translate
```
## 不使用框架时使用核心库 [#core]
如果你没有使用 Flask 或 FastAPI,请直接安装 `gt-i18n`。核心库中没有 [`initialize_gt`](/docs/python/reference/functions/initialize-gt)——请创建一个 [`I18nManager`](/docs/python/reference/classes/i18n-manager),使用 [`set_i18n_manager`](/docs/python/reference/functions/set-i18n-manager) 将其注册,并自行设置请求的区域设置。
```bash
pip install gt-i18n
```
```python
from gt_i18n import I18nManager, set_i18n_manager, t
manager = I18nManager(default_locale="en", locales=["es", "fr"])
set_i18n_manager(manager)
manager.set_locale("es")
print(t("Hello, world!"))
```
有关上下文和变量,请参阅[翻译字符串](/docs/python/guides/translating-strings);如需自定义区域设置检测,请参阅[检测请求的区域设置](/docs/python/guides/detecting-locale)。
## Next steps
- /docs/python/guides/translating-strings
- /docs/python/guides/detecting-locale
- /docs/python/guides/declaring-variables
- /docs/python/guides/storing-translations