FastAPI
FastAPI 是用于使用 Python 构建 API 的 Web 框架。 需要 Python 3.10 或更高版本。 PyCharm Pro 为开发 FastAPI 应用提供以下支持:
创建 FastAPI 项目
在主菜单中,转到 ,或在 欢迎界面 中点击 新建项目 按钮。

在 新建项目 对话框中,执行以下操作:
选择 FastAPI 作为项目类型。
指定项目位置。 项目名称将自动根据指定路径中的文件夹名称生成。
选择 创建 Git 仓库 以 将项目置于 Git 版本控制之下。
如果您要继续使用 项目 venv、 uv 或 基础 Conda 解释器,请选择相应的选项并点击 创建。
- 项目 venv
选择 项目 venv 为项目创建虚拟环境。

在 Python 版本 字段中,选择要用于虚拟环境的 Python 解释器。
虚拟环境会创建在项目根目录下的
.venv目录中。- uv
选择 uv 为项目创建 uv 虚拟环境。

在 Python 版本 字段中,选择要用于环境的 Python 版本。
PyCharm 会自动检测 uv 可执行文件。 如果未检测到,请在 uv 路径 中指定其位置。
在 位置 字段中,指定虚拟环境的创建位置。 默认情况下,PyCharm 会在项目根目录中创建
.venv目录。
- 基础 Conda
选择 基础 Conda 使用 Conda 安装的 base 环境作为项目解释器。

PyCharm 会自动检测 Conda 可执行文件。 如果未检测到,请在 conda 路径 中指定其位置。
要配置其他类型的解释器或使用现有环境,请选择 自定义环境。
接下来的步骤取决于您的选择:

从环境类型列表中选择 Virtualenv。
从列表中选择基础解释器,或点击
,在您的文件系统中查找 Python 可执行文件。
在 位置 字段中指定新虚拟环境的位置,或点击
并在文件系统中浏览到该位置。 新虚拟环境所在目录应为空。
如果希望将您计算机上全局 Python 中安装的所有软件包添加到要创建的虚拟环境中,请选中 继承基础解释器的包 复选框。 此复选框对应于 virtualenv 工具的
--system-site-packages选项。

从环境类型列表中选择 Conda。
从列表中选择 Python 版本。
指定环境名称。
PyCharm 将检测到 conda 安装。
如果 PyCharm 未自动检测到该安装,请指定 conda 可执行文件的位置,或点击
进行浏览。

从环境类型列表中选择 Pipenv。
从列表中选择基础解释器,或点击
,在您的文件系统中查找 Python 可执行文件。
如果您已将基础二进制目录添加到
PATH环境变量,则无需设置任何其他选项:将自动检测到 pipenv 可执行文件的路径。如果 PyCharm 未检测到 pipenv 可执行文件,请点击 通过 pip 安装 pipenv 以允许 PyCharm 为您自动安装它。
或者,按照 pipenv 安装步骤 查找可执行文件路径,然后在对话框中指定它。

从环境类型列表中选择 Poetry。
从列表中选择基础解释器,或点击
,在您的文件系统中找到 Python 可执行文件。
如果 PyCharm 未检测到 Poetry 安装,请点击 通过 pip 安装 poetry 以允许 PyCharm 为您自动安装 Poetry。
或者,指定 Poetry 可执行文件的位置,或点击
进行浏览。
要在项目目录内创建虚拟环境,请选中 在项目中创建环境 复选框。

从环境类型列表中选择 uv。
从列表中选择 Python 版本。
PyCharm 将检测到 uv 安装。
否则,请指定 uv 可执行文件的位置,或点击
进行浏览。

从环境类型列表中选择 Hatch。
PyCharm 会检测到 Hatch 安装。
否则,请指定 Hatch 可执行文件的位置,或点击
进行浏览。
选择环境。
Hatch 环境是为各类特定项目任务设计的工作区。 如果未显式选择任何环境,Hatch 将使用 默认环境。
从列表中选择基础解释器,或点击
,在您的文件系统中查找 Python 可执行文件。

要重用现有 conda 环境:
将 按类型分组 切换为 Conda。
PyCharm 将检测到 conda 安装。
如果 PyCharm 未自动检测到该安装,请指定 conda 可执行文件的位置,或点击
进行浏览。
从列表中选择该环境。 如果您手动指定了 conda 路径,可能需要重新加载环境。

要重用其他 Python 环境:
将 按类型分组 切换为 Python。
从列表中选择 Python 可执行文件,或点击
进行浏览。
单击 创建。
PyCharm 会创建一个 Python 环境(或重用现有环境),并安装 fastapi 和 uvicorn 包。 它还会添加 main.py 和 test_main.http 文件,并包含一些默认的代码构造。
使用编码辅助开发应用
开发 FastAPI 应用时,您可以受益于 IDE 中的编码辅助功能。
使用 检查 来分析代码问题。 您可以使用检查小部件简要预览问题摘要。 点击该小部件,在 问题 工具窗口中获取每个已检测到问题的更多信息。
您可以使用具备上下文感知的 代码补全 来加快编码过程。 开始键入代码构造,补全弹出窗口会出现。 您也可以按 Ctrl+Space 以显示可用项。


使用依赖项
PyCharm 可识别使用 Depends() 和 Security() 声明的 FastAPI 依赖项:作为参数默认值、在 Annotated 类型提示中、通过类型别名、在路径操作装饰器的 dependencies 列表中,以及在 APIRouter、 FastAPI 和 include_router() 的 dependencies 中。 还支持子依赖项和基于类的依赖项。
依赖项生命周期提示
每次调用 Depends() 和 Security() 后,PyCharm 会显示该依赖项的生命周期:
↺ yield:该依赖项使用yield,并在响应后进行清理。→ return:该依赖项仅返回一个值。
默认情况下,PyCharm 仅显示 yield 依赖项的提示。 要更改此设置,请转到 并选中或清除 为 'yield' 依赖项显示 和 为 'return' 依赖项显示 复选框。
循环依赖项
FastAPI 循环依赖 检查 会报告以循环方式相互依赖的依赖项,例如,当 dep_a 依赖于 dep_b 且 dep_b 依赖于 dep_a 时。 在这种情况下,FastAPI 会在启动时引发 RuntimeError。 PyCharm 会在该循环中的每个依赖项调用上将该循环报告为错误。
要配置该检查,请转到 。
查看端点的依赖关系图
将文本光标放在路径操作函数内,右键点击,然后选择 显示 FastAPI 依赖图。
或者,点击端点旁边的装订区域图标,然后选择 显示 FastAPI 依赖图。
查看在以端点命名的新编辑器标签页中打开的图,例如 列出用户 - GET /users。 每个依赖项只出现一次,即使多个依赖项使用它也是如此。
yield依赖项会用↺标记,形成循环的依赖项会以红色高亮显示。要打开依赖项的源代码,请双击其节点。
查找使用依赖项的端点
将文本光标放在函数或类内,右键点击,然后选择 显示 FastAPI 依赖项使用情况。
或者,按 Alt+Enter 并选择 显示 FastAPI 依赖项使用情况 ,或点击显示端点数量的提示,该提示位于顶级函数或类的声明旁边,例如 3 个端点。
在打开的弹出窗口中,查看使用该依赖项的端点。 每个项目都会显示端点的 HTTP 方法和路径,以及该端点是直接使用该依赖项还是通过另一个依赖项使用。 要仅显示直接用法,请清除 显示可传递依赖 复选框。
选择一个端点以在编辑器中打开。
启动并修改运行/调试配置
创建新项目后,PyCharm 会为您提供一个运行/调试配置,以便您执行 FastAPI 应用。 创建的配置会在可用的运行/调试配置列表中被选中。 在运行小部件中点击
以启动您的应用。

目标应用会在 运行 工具窗口中执行。 您可以点击该链接在浏览器中预览应用。
您可以修改随项目创建的默认运行/调试配置。 从可用配置列表中选择 。
在左侧窗格中选择目标配置并修改其参数 — 例如,可以添加更多 uvicorn 选项,如
--reload --reload-delay 10。有关使用运行/调试配置的更多信息,请参阅 运行/调试配置。
您还可以执行 .http 文件来测试 GET 请求。 您可以分别运行每个请求,或者在 .http 文件工具栏上点击
以一次性测试所有请求。
选择在无环境的情况下执行请求,或在公共文件或私有文件中创建环境。

PyCharm 会在 Services 工具窗口中执行 GET 测试。 您可以选择特定请求以预览其执行状态摘要。

在 执行 HTTP 请求 中详细了解 HTTP 请求。
管理端点
Endpoints 工具窗口
您可以预览、修改、创建并测试 FastAPI 应用的端点。
选择 打开 端点 工具窗口。
或者,点击左侧的
更多工具窗口 ,然后选择 端点。
端点 工具窗口包含应用中定义的端点列表。
专用窗格显示所选端点的详细信息,包括文档、生成的 HTTP 请求、示例和生成的 OpenAPI 规范。
在列表中双击任一端点以导航到其声明。 您也可以在列表中右键点击任意项以打开上下文菜单。

使用编码辅助创建和修改端点
代码补全
当您在 Python 文件、HTTP 客户端和其他项目文件中键入时, PyCharm 会补全端点名称。

动态模板
借助适用于 HTTP 客户端的动态模板,您可以快速修改请求方法、URL 和变量。

重构
如果您需要重命名端点,请使用 重命名 重构功能。 在编辑器中选择一个端点,按 Shift+F6 ,然后键入其新名称。

重命名将在整个项目的所有出现位置生效。
HTTP 客户端
要在单独的选项卡中打开 HTTP 客户端,请在 HTTP 客户端 选项卡上点击 在编辑器中打开。 PyCharm 会打开一个包含该 HTTP 请求的临时草稿文件。 在装订区域中使用 运行该请求。
装订区域图标
点击装订区域中的 图标以管理端点。
您可以查找用法,在 HTTP 客户端中运行请求以测试端点,查看所有更低级别的端点、向上导航一级,或将 URL 复制到剪贴板。

有关更多信息,请参见 Endpoints 工具窗口。