uv python版本与依赖管理

选择原因

1. 新的好玩、rust开发的执行速度快
2. 确实方便
3. 轻,软件就十几二十兆,占磁盘小
4. uv.lock可以锁版本

场景应用

场景一

从 anaconda、conda、pipenv等迁移过来

  • 导出依赖列表
pip freeze > requirements.txt  # 调整绝对路径的模块
  • 进入项目,初始化环境
cd ./你的项目文件
uv init # 会生成pyproject.tom、uv.lock、.python-version文件
uv run # 会根据.python-version中的python版本生成 .venv文件,即python虚拟环境
  • 将旧依赖方式同步到pyproject.toml中
uv add -r requirements.txt

requirements.txt就可以删除了,以后就通过pyproject.toml来管理

场景二

新建项目

mkdir project_name
cd ./project_name
uv init
# 或者 uv init project_name 我更喜欢自己创建文件夹
echo "3.11" > .python-version # 确定自己的python版本
uv run # 自定创建python环境

场景三

已有uv项目

cd project_name
uv sync # 根据pyproject.tom、uv.lock自动安装依赖包

常用命令

uv init  # 初始化
uv run # 等同于python
uv add module # 添加模板
uv add "module==1.*.*" # 指定版本
uv remove module # 移除模块
uv sync # 同步依赖
# 兼容pip
uv pip freeze > requirements.txt
uv pip install module
...

其他命令:https://docs.astral.sh/uv/getting-started/features/

配置全局pip源

mkdir -p ~/.config/uv
vim ~/.config/uv/uv.toml

添加一下内容

[[index]]
url = "https://mirrors.aliyun.com/pypi/simple"
default = true

vscode选择环境

Enter interpreter path...

./venv/bin/python  # 没错所有项目用的都是这个路径,就不必要去找了,因为都是项目目录下

新一代python版本与依赖管理工具 uv的更多相关文章

  1. Python黑帽编程1.3 Python运行时与包管理工具

    Python黑帽编程1.3  Python运行时与包管理工具 0.1  本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Attack and ...

  2. Composer : php依赖管理工具

    原始时代 我记得在当时用php的时候还没有composer,只有个pear,但是不好用呀,还不如直接在互联网上到处复制代码了,更快更不容易出错,当时也没有github这么好的社区工具了 总结如下 代码 ...

  3. composer php依赖管理工具

    #composer是什么 Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们. composer出现之前我们php项目依赖管理大部分都是手动 ...

  4. Go 包依赖管理工具 —— govendor

    govendor 是一个基于 vendor 机制实现的 Go 包依赖管理命令行工具.与原生 vendor 无侵入性融合,也支持从其他依赖管理工具迁移,可以很方便的实现同一个包在不同项目中不同版本.以及 ...

  5. Golang依赖管理工具:glide从入门到精通使用

    这是一个创建于 2017-07-22 05:33:09 的文章,其中的信息可能已经有所发展或是发生改变. 介绍 不论是开发Java还是你正在学习的Golang,都会遇到依赖管理问题.Java有牛逼轰轰 ...

  6. PHP的依赖管理工具----composer

    安装Composer 参考:https://getcomposer.org/doc/01-basic-usage.md composer 是PHP依赖管理工具 PHP最低版本要求5.3.2,需要允许o ...

  7. 有用PHP依赖管理工具Composer新手教程

    PHP依赖管理工具Composer新手教程 Composer 是 PHP 的一个依赖管理工具.它同意你申明项目所依赖的代码库,它会在你的项目中为你安装他们. 依赖管理 Composer 不是一个包管理 ...

  8. Go依赖管理工具 - dep

    https://segmentfault.com/a/1190000013561841 Go依赖管理工具 Go dependency management tool 环境要求 Golang >= ...

  9. PHP依赖管理工具Composer入门

    作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://weizhifeng.net/manage-php-dependency-wi ...

  10. 【Tool】Windows系统安装Maven依赖管理工具

    安装Maven依赖管理工具 官网下载地址:http://maven.apache.org/download.cgi 系统环境要求: [JDK]Maven3.3版本+需要JDK1.7版本以上支持 [内存 ...

随机推荐

  1. Oracle 数据泵 定时全库备份&&删除备份文件【注意点】

    一.概述 在给客户部署的数据泵备份&&删除过期备份脚本时,脚本删除部分未生效,导致存储空间占用非常大. 手动执行该删除命令时,执行成功: 最后发现需要增加 find.rm 等命令的PA ...

  2. SpringBoot2.0 整合 JWT 框架后台生成token

    一.传统Session认证 1.1.认证过程 1.用户向服务器发送用户名和密码.2.服务器验证后在当前对话(session)保存相关数据.3.服务器向返回sessionId,写入客户端 Cookie. ...

  3. 登陆mysql,Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) "

    今天ssh到slave机器上,登陆mysql,遇到下图的报错. 查了一圈,最终解决办法简洁的出乎意料. 首先,要查看mysql服务是否已经启动(真的太容易漏掉) 第2步,你可能会自然而然的以为密码也是 ...

  4. [NOIP2022] 比赛 随机排列 部分分

    看到最大值,考虑使用单调栈搞出 \([la_i, ra_i], [lb_i, rb_i]\) 表示这一段区间 \(i\) 是 \(a, b\) 的最大值.预处理是简单的. inline void in ...

  5. games101_Homework4

    实现四个点的贝塞尔曲线 作业描述: • bezier:该函数实现绘制 Bézier 曲线的功能.它使用一个控制点序列和一个 OpenCV::Mat 对象作为输入,没有返回值.它会使 t 在 0 到 1 ...

  6. C++入门级基础知识汇总

    知识来源:https://www.imooc.com/learn/1304 https://www.runoob.com/cplusplus/cpp-tutorial.html 编程第一步导入头文件: ...

  7. 融合虚拟与现实,AR Engine为用户提供沉浸式交互体验

    当今的应用市场中,传统的应用产品已经难以完全满足消费者的多样化需求.为了在竞争激烈的市场中脱颖而出,企业需要深入洞察用户需求,提供个性化的服务体验和差异化的产品创新,以吸引并留住消费者. 比如,购物类 ...

  8. redis教程(Mac)

    1.首先,检查是否已经安装Homebrew,如果没有安装Homebrew,请先安装 2.使用Homebrew安装命令,在终端输入以下命令 brew install redis 当前默认安装5.0.8版 ...

  9. AtCoder Beginner Contest 379

    Contest Link C 妙妙贪心题,居然需要高斯求和公式. Submission D 妙妙套路题,维护全局 lazytag,easy to solve. Submission E 妙妙拆贡献题, ...

  10. Winform多线程持续读取PLC数据

    1.Winform窗体界面 2.后台代码 点击查看代码 using Modbus.Device; using System; using System.Collections.Generic; usi ...