“我最近大量使用 FastAPI。我实际上计划把它用于我团队在 微软的机器学习(ML)服务。其中一些正在集成进核心 Windows 产品以及一些 Office 产品。”-
“我们采用了 FastAPI 库来启动一个可查询获取预测结果的 REST 服务器。” [用于 Ludwig]-
“Netflix 很高兴宣布开源我们的危机管理编排框架:Dispatch!” [使用 FastAPI 构建]-
“如果有人正在构建生产级的 Python API,我强烈推荐 FastAPI。它设计优雅、使用简单且高度可扩展 —— 它已经成为我们 API 优先开发战略中的关键组件。”-
-注意,这表示“`one_person` 是类 `Person` 的一个实例(instance)”。
+注意,这表示“`one_person` 是类 `Person` 的一个**实例**(instance)”。
-它并不表示“`one_person` 是名为 `Person` 的类本身(class)”。
+它并不表示“`one_person` 是名为 `Person` 的**类**(class)”。
## Pydantic 模型 { #pydantic-models }
@@ -285,7 +285,7 @@ def some_function(data: Any):
/// note | 注意
-想了解更多关于 [Pydantic](https://docs.pydantic.dev/) 的信息,请查看其文档。
+要了解更多关于 [Pydantic 的信息,请查看其文档](https://docs.pydantic.dev/)。
///
@@ -295,7 +295,7 @@ def some_function(data: Any):
## 带元数据注解的类型提示 { #type-hints-with-metadata-annotations }
-Python 还提供了一个特性,可以使用 `Annotated` 在这些类型提示中放入额外的元数据。
+Python 还提供了一个特性,可以使用 `Annotated` 在这些类型提示中放入**额外的元数据**。
你可以从 `typing` 导入 `Annotated`。
@@ -305,15 +305,15 @@ Python 本身不会对这个 `Annotated` 做任何处理。对于编辑器和其
但你可以在 `Annotated` 中为 **FastAPI** 提供额外的元数据,来描述你希望应用如何行为。
-重要的是要记住:传给 `Annotated` 的第一个类型参数才是实际类型。其余的只是给其他工具用的元数据。
+重要的是要记住:传给 `Annotated` 的**第一个*类型参数***才是**实际类型**。其余的只是给其他工具用的元数据。
现在你只需要知道 `Annotated` 的存在,并且它是标准 Python。😎
-稍后你会看到它有多么强大。
+稍后你会看到它有多么**强大**。
/// tip | 提示
-这是标准 Python,这意味着你仍然可以在编辑器里获得尽可能好的开发体验,并能和你用来分析、重构代码的工具良好协作等。✨
+这是**标准 Python**,这意味着你仍然可以在编辑器里获得**尽可能好的开发体验**,并能和你用来分析、重构代码的工具良好协作等。✨
同时你的代码也能与许多其他 Python 工具和库高度兼容。🚀
@@ -325,16 +325,16 @@ Python 本身不会对这个 `Annotated` 做任何处理。对于编辑器和其
在 **FastAPI** 中,用类型提示来声明参数,你将获得:
-* 编辑器支持。
-* 类型检查。
+* **编辑器支持**。
+* **类型检查**。
-……并且 **FastAPI** 会使用相同的声明来:
+...并且 **FastAPI** 会使用相同的声明来:
-* 定义要求:从请求路径参数、查询参数、请求头、请求体、依赖等。
-* 转换数据:把请求中的数据转换为所需类型。
-* 校验数据:对于每个请求:
- * 当数据无效时,自动生成错误信息返回给客户端。
-* 使用 OpenAPI 记录 API:
+* **定义要求**:从请求路径参数、查询参数、请求头、请求体、依赖等。
+* **转换数据**:把请求中的数据转换为所需类型。
+* **校验数据**:对于每个请求:
+ * 当数据无效时,自动生成返回给客户端的**错误**。
+* 使用 OpenAPI **记录** API:
* 然后用于自动生成交互式文档界面。
这些听起来可能有点抽象。别担心。你会在[教程 - 用户指南](tutorial/index.md)中看到所有这些的实际效果。
@@ -343,6 +343,6 @@ Python 本身不会对这个 `Annotated` 做任何处理。对于编辑器和其
/// note | 注意
-如果你已经读完所有教程,又回来想进一步了解类型,一个不错的资源是 [`mypy` 的“速查表”](https://mypy.readthedocs.io/en/latest/cheat_sheet_py3.html)。
+如果你已经读完整个教程,又回来想进一步了解类型,一个不错的资源是 [`mypy` 的“速查表”](https://mypy.readthedocs.io/en/latest/cheat_sheet_py3.html)。
///
diff --git a/docs/zh/docs/virtual-environments.md b/docs/zh/docs/virtual-environments.md
index d10251dbe..a31240d9f 100644
--- a/docs/zh/docs/virtual-environments.md
+++ b/docs/zh/docs/virtual-environments.md
@@ -861,4 +861,4 @@ I solemnly swear 🐺
如果你读过并理解了所有这些,现在**你对虚拟环境的了解比很多开发者都要多**。🤓
-在未来当你调看看起来复杂的东西时,了解这些细节很可能会有用,你会知道**它是如何在底层工作的**。😎
+在未来当你调试看起来复杂的东西时,了解这些细节很可能会有用,你会知道**它是如何在底层工作的**。😎