安装了conda和uv如何创建一个项目?

结合 Conda 和 uv 工具创建项目的流程如下(兼顾环境隔离和依赖管理效率):

步骤 1:用 Conda 创建并激活虚拟环境

先通过 Conda 创建一个独立的虚拟环境(指定 Python 版本),确保项目依赖隔离:

bash 复制代码
# 方式1:创建在默认目录(Conda安装目录/envs/)
conda create --name my_project python=3.11 -y  # 替换my_project为项目名,指定Python版本

# 方式2:创建在自定义路径(推荐,方便管理项目文件)
conda create -p ./my_project_env python=3.11 -y  # 路径可改为项目所在目录,如./env

激活环境:

bash 复制代码
# 激活命名环境
conda activate my_project

# 激活路径环境(若用方式2)
conda activate ./my_project_env

步骤 2:在 Conda 环境中安装 uv

确保 uv 安装在当前激活的 Conda 环境中(而非全局):

bash 复制代码
# 用pip安装(uv 本身可通过pip安装)
pip install uv

验证 uv 是否在当前环境:

bash 复制代码
# Windows
where uv

# Linux/macOS
which uv

输出路径应指向当前激活的 Conda 环境目录(如 ./my_project_env/Scripts/uv.exeenvs/my_project/bin/uv)。

步骤 3:初始化项目并管理依赖(用 uv)

uv 是高效的 Python 依赖管理工具,可替代 pip/venv,快速处理依赖:

  1. 创建项目目录并进入(若还未创建):

    bash 复制代码
    mkdir my_project && cd my_project
  2. 初始化 uv 项目 (生成 pyproject.toml,用于管理依赖):

    bash 复制代码
    uv init

    会生成基础配置文件,包含项目名称、版本等信息(可手动编辑)。

  3. 安装依赖(示例):

    bash 复制代码
    # 安装指定包(如requests、pandas)
    uv add requests pandas
    
    # 安装开发依赖(如pytest,仅开发时需要)
    uv add --dev pytest

    依赖会被安装到当前激活的 Conda 环境中,同时更新 pyproject.tomluv.lock(锁定依赖版本)。

步骤 4:运行/开发项目

  • 直接在激活的环境中运行代码:

    bash 复制代码
    uv run python main.py  # 假设项目入口为main.py
  • 若需导出依赖(供他人复现环境):

    bash 复制代码
    # 导出依赖列表(基于pyproject.toml)
    uv export > requirements.txt
  • 他人复现环境时,激活相同的 Conda 环境后执行:

    bash 复制代码
    uv install -r requirements.txt

总结流程

  1. Conda 创建并激活虚拟环境(负责 Python 解释器和环境隔离)。
  2. 在环境中安装 uv(负责高效管理项目依赖)。
  3. 用 uv 初始化项目、安装依赖,开始开发。

这种组合既利用了 Conda 强大的环境隔离能力,又借助 uv 提升了依赖安装和管理的速度。

相关推荐
菜鸟una5 小时前
【微信小程序 + 消息订阅 + 授权】 微信小程序实现消息订阅流程介绍,代码示例(仅前端)
前端·vue.js·微信小程序·小程序·typescript·taro·1024程序员节
papership6 小时前
【入门级-算法-5、数值处理算法:高精度的减法】
算法·1024程序员节
好好研究7 小时前
JAVAEE知识整理之AJAX、JSON
ajax·java-ee·json·1024程序员节
时空无限7 小时前
conda 管理 python 版本和虚拟环境
python·conda
隔壁程序员老王7 小时前
基于 Python 的坦克大战小程序,使用 Pygame 库开发
python·小程序·pygame·1024程序员节
F_D_Z8 小时前
SkyDiffusion:用 BEV 视角打开街景→航拍图像合成新范式
diffusion·sota·1024程序员节·bev·skydiffusion·视角变换·多图融合
技术小丁8 小时前
uni-app 广告弹窗最佳实践:不扰民、可控制频次、含完整源码
前端·uni-app·1024程序员节
AhriProGramming9 小时前
Python学习快速上手文章推荐(持续更新)
开发语言·python·学习·1024程序员节
彩云回9 小时前
LOESS回归
人工智能·机器学习·回归·1024程序员节