【开发环境】 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

一个简单的工程化应用

相关推荐
凌波粒1 分钟前
SpringMVC基础教程(2)--Controller/RestFul风格/JSON/数据转发和重定向
java·后端·spring·json·restful
AI松子6663 分钟前
PyTorch-混合精度训练(amp)
人工智能·pytorch·python
MDLZH3 分钟前
Pytorch性能调优简单总结
人工智能·pytorch·python
程序员爱钓鱼1 小时前
Python 编程实战 · 实用工具与库 — Flask 路由与模板
前端·后端·python
程序员爱钓鱼1 小时前
Python 编程实战 · 实用工具与库 — Django 项目结构简介
后端·python·面试
新之助小锅2 小时前
java版连接汇川PLC,发送数据,读取数据,保持重新链接,适用安卓
android·java·python
海琴烟Sunshine2 小时前
leetcode 383. 赎金信 python
python·算法·leetcode
合作小小程序员小小店4 小时前
web开发,在线%超市销售%管理系统,基于idea,html,jsp,java,ssh,sql server数据库。
java·前端·sqlserver·ssh·intellij-idea
不爱学英文的码字机器5 小时前
重塑 Web 性能:用 Rust 与 WASM 构建“零开销”图像处理器
前端·rust·wasm
浩星5 小时前
react的框架UmiJs(五米)
前端·javascript·react.js