使用vscode做python项目fastapi的开发
- 准备工作
安装必要软件
-
Python:确保安装 Python 3.8 或更高版本(FastAPI 推荐)。下载地址:https://www.python.org/downloads/
-
验证安装:
bash
python --version
-
-
VS Code:下载并安装 VS Code:https://code.visualstudio.com/
-
FastAPI 和 Uvicorn:FastAPI 用于构建 API,Uvicorn 是 ASGI 服务器用于运行 FastAPI。
-
VS Code 扩展:
- 安装 Python 扩展(由 Microsoft 提供)。
- 可选:安装 Pylance(代码补全)、REST Client(测试 API)。
设置项目目录
-
创建一个项目文件夹,例如 fastapi-project:
bash
mkdir fastapi-project cd fastapi-project
-
初始化 Git(可选):
bash
git init
- 配置 Python 虚拟环境
虚拟环境可以隔离项目依赖,避免冲突。
-
创建虚拟环境:
-
在 VS Code 中,打开终端(Ctrl+`)或命令行,运行:
bash
python -m venv venv
-
这会在项目目录下创建一个名为 venv 的虚拟环境文件夹。
-
-
激活虚拟环境:
-
Linux/macOS:
bash
source venv/bin/activate
-
Windows:
bash
venv\Scripts\activate
-
激活后,终端提示符会显示 (venv)。
-
-
在 VS Code 中选择解释器:
- 按 Ctrl+Shift+P 打开命令面板,输入 Python: Select Interpreter。
- 选择虚拟环境中的 Python 解释器(通常位于 venv/bin/python 或 venv\Scripts\python.exe)。
-
安装 FastAPI 和 Uvicorn: 在激活的虚拟环境中运行:
bash
pip install fastapi uvicorn
-
创建一个简单的 FastAPI 应用
-
在项目目录下创建文件 main.py,输入以下代码:
python
from fastapi import FastAPIapp = FastAPI()@app.get("/") async def root():return {"message": "Hello, FastAPI!"}
-
运行 FastAPI 应用:
-
在终端中,确保虚拟环境已激活,运行:
bash
uvicorn main:app --reload
-
参数说明:
- main:app:main 是文件名,app 是 FastAPI 实例。
- –reload:启用自动重载,适合开发环境。
-
访问 http://127.0.0.1:8000 查看 API 输出。
-
访问 http://127.0.0.1:8000/docs 查看自动生成的 Swagger UI 文档。
-
- 配置 VS Code 调试 FastAPI
调试 FastAPI 应用需要配置 launch.json 文件以正确运行 Uvicorn。
-
创建调试配置文件:
-
点击 VS Code 左侧的“运行和调试”图标(或 Ctrl+Shift+D)。
-
点击“创建 launch.json 文件”,选择 Python。
-
在 .vscode/launch.json 中添加以下配置:
json
{"version": "0.2.0","configurations": [{"name": "FastAPI","type": "python","request": "launch","module": "uvicorn","args": ["main:app", "--reload"],"justMyCode": false}] }
-
说明:
- “module”: “uvicorn”:运行 Uvicorn 模块。
- “args”: [“main:app”, “–reload”]:指定 FastAPI 应用和开发模式。
- “justMyCode”: false:允许调试第三方库(如 FastAPI)。
-
-
设置断点:
- 在 main.py 中,例如 return 语句前,点击代码行左侧添加断点(红色圆点)。
-
启动调试:
- 按 F5 或点击“运行和调试”中的绿色播放按钮。
- VS Code 会启动 Uvicorn,并在断点处暂停,允许您检查变量和代码执行。
- 优化开发体验
代码补全和静态检查
-
Pylance 扩展:提供智能补全和类型检查。
-
设置 PYTHONPATH(如遇到模块导入问题):
-
如果 VS Code 无法识别项目模块,添加项目路径到 PYTHONPATH:
-
在 .vscode/settings.json 中添加:
json
{"python.envFile": "${workspaceFolder}/.env","python.analysis.extraPaths": ["./"] }
-
或通过终端检查和设置:
bash
export PYTHONPATH=$PYTHONPATH:$(pwd)
-
-
测试 API
-
Swagger UI:访问 http://127.0.0.1:8000/docs 测试 API 端点。
-
REST Client 扩展:在 VS Code 中安装 REST Client,创建 .http 文件测试 API:
http
GET http://127.0.0.1:8000/
点击“Send Request” 查看响应。
管理依赖
-
生成 requirements.txt:
bash
pip freeze > requirements.txt
-
安装依赖:
bash
pip install -r requirements.txt
- 常见问题与解决
-
TLS 握手错误(与 Flatpak 无关): 如果安装扩展或依赖时遇到网络问题,检查网络连接或代理设置:
bash
ping pypi.org
-
模块未找到: 确保选择正确的 Python 解释器(虚拟环境中的)。重启 VS Code 或重新选择解释器。
-
调试不生效: 检查 launch.json 配置是否正确,确保 main:app 与代码中的文件名和 FastAPI 实例名称一致。
- 扩展学习资源
- 官方文档:
- 视频教程:
- 示例项目:
总结
通过以上步骤,您可以在 VS Code 中为 FastAPI 项目设置 Python 开发环境,包括虚拟环境、代码运行、调试和 API 测试。关键是正确配置虚拟环境和 launch.json,并利用 VS Code 的扩展提升效率。