【开发环境】 VSCode 快速搭建 Python 项目开发环境

可以直接参考本文步骤来开始一个 Python 项目

话不多说,我们直接从 UV 开始

UV

uv 是一个现代化的 Python 版本管理工具。 他就像 nvmnode

强烈建议使用它来为你的系统安装 Python, 而不是直接下载指定版本的 Python

安装 UV

sh 复制代码
# On macOS and Linux.
curl -LsSf https://astral.sh/uv/install.sh | sh

# On Windows.
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

如果你因为网络原因无法直接使用命令行, 下载执行安装命令。你可以先通过浏览器或下载工具下载脚本,在本地执行。以 windows 系统为例

浏览器直接打开下载: astral.sh/uv/install....

受权并运行

powershell 复制代码
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\uv-installer.ps1

安装验证

sh 复制代码
uv --version

使用 Python 相关命令

sh 复制代码
uv python install 3.11      # 安装 3.11 系列最新补丁版

uv python uninstall 3.11  # 卸载

uv python list --only-installed # 仅显示本机存在的解释器

你可以安装多个版本的 Python 并在控制台中携带版本号来临时使用它们

VSCode + venv

安装插件

创建 venv

venv 可为每个项目创建隔离的「专属解释器 + 依赖」目录,避免包冲突。他就像 node_modules 于 JavaScript 工程

安装插件完成后, 使用 Ctrl + Shfit + P就能在 VSCode 中找到创建环境的指令

你可以使用 venv ,根据引导创建指定版本的 Python 工程环境

成功之后你的面板看起来就像这样, 你可以自己探索 UI 上的功能

调试代码

在 .vscode/launch.json 中,你可以自定义调试的命令

json 复制代码
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Python: Main",
      "type": "debugpy",
      "request": "launch",
      "program": "${workspaceFolder}/main.py",
      "args": [],
    }
  ]
}

之后在你的调试工具中就可以选择并执行你的调试命令

Poetry

在含有 venv 的项目中, 你仍可以使用 Poetry 下载依赖

安装 Poetry

sh 复制代码
pip install poetry

安装依赖

sh 复制代码
# 生成 pyproject.toml
poetry init

# 或在已有 pyproject.toml 的项目中 初始化依赖
# poetry install 

poetry add django

Peotry 添加代理

如果你的 Resolving dependencies... 非常缓慢,可以尝试添加代理

sh 复制代码
poetry source add --priority=primary tuna https://pypi.tuna.tsinghua.edu.cn/simple

一个简单的工程化应用

相关推荐
光影少年3 小时前
angular生态及学习路线
前端·学习·angular.js
猫头虎5 小时前
如何查看局域网内IP冲突问题?如何查看局域网IP环绕问题?arp -a命令如何使用?
网络·python·网络协议·tcp/ip·开源·pandas·pip
沿着路走到底5 小时前
python 基础
开发语言·python
无尽夏_6 小时前
HTML5(前端基础)
前端·html·html5
追逐时光者6 小时前
推荐 12 款开源美观、简单易用的 WPF UI 控件库,让 WPF 应用界面焕然一新!
后端·.net
Jagger_6 小时前
敏捷开发流程-精简版
前端·后端
FIN66686 小时前
昂瑞微冲刺科创板:创新驱动,引领射频芯片国产化新征程
前端·安全·前端框架·信息与通信·芯片
GISer_Jing6 小时前
ByteDance——jy真题
前端·javascript·面试
睡美人的小仙女1276 小时前
浏览器为何屏蔽本地文件路径?
前端
真的想不出名儿6 小时前
Vue 中 props 传递数据的坑
前端·javascript·vue.js