使用uv和pycharm搭建python开发环境

uv是一个Rust编写的极速Python包和项目管理工具。官网: https://docs.astral.sh/uv/ , 中文的详细使用文档: https://uv.doczh.com/
可以用来安装和管理个多版本python,创建管理不同的虚拟环境,所谓虚拟环境是将包安装到对应的虚拟环境,解决了不同应用依赖的不同包版本。综上所述,uv可以帮我们管理不同版本不同虚拟环境的python应用。

安装uv

因此使用uv进行python开发是一个非常好的实践。以下介绍如何在windows环境下安装uv,和官网的安装方法有所区别,但是只用压缩包&设置环境变量的方式应该更加直观,官网的基于脚本的安装方式最终的效果也是将下载压缩包加压,并设置path环境变量。

  1. 打开 https://github.com/astral-sh/uv/releases ,选择windows的安装zip包
    uv0

  2. 解压至文件夹比如: D:\devsoft\uv

  3. 设置环境变量PATH,
    uv1

  4. 运行控制台cmd, 深入 uv --version,有正常的输出说明安装成功
    uv2

  5. 接下来我们开始使用 uv进行python3.10进行开发,如果我们想知道uv在安装过程中,具体做了什么事,我们可以加个参数"-v",如:
    uv python install 3.10 -v
    输出如下:
    uv3

  6. 创建个人练习的python虚拟环境,因此可以跟其他应用的环境进行隔离
    uv venv localtest --python 3.10
    需要进行环境的激活
    localtest\Scripts\activate
    使用uv进行包管理,注意不是pip进行包管理,
    uv pip install langchain==1.0.0a4

我们可以看下虚拟环境目录,看到依赖包是安装在我们创建的虚拟环境路径localtest\Lib\site-packages中。
uv8

接下来我们看看如何在pycharm中使用uv作为python的运行开发环境。

点击新建项目,选择uv路径和python版本;
uv9

为了验证在pycharm中运行的python代码确实是在uv创建的虚拟环境中运行,我们运行如下代码,查看结果,确实是使用虚拟环境的python。

import sys
print(sys.path)
print(sys.executable)

uv11

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/908148.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

lc1032-字符流

难度:困难题目描述设计一个算法:接收一个字符流,并检查每个新字符加进来形成的新串,其后缀是否是字符串数组 words 中的一个字符串示例 输入: ["StreamChecker", "query", "query"…

lc1032-字符流

难度:困难题目描述设计一个算法:接收一个字符流,并检查每个新字符加进来形成的新串,其后缀是否是字符串数组 words 中的一个字符串示例 输入: ["StreamChecker", "query", "query"…

八股整理xdsm - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

C++小白修仙记_LeetCode刷题_哈希表

哈希表(难度:easy) 217. 存在重复元素 给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。 示例: 输入:nums = [1,2,3,1] 输出:true 解释: 元…

【F#学习】字符串String

字符串 F#的字符串和其他现代化的语言的字符串差异不大。 let fruit = "Apple"字符串可以通过调用其本身的函数来修改,也可以通过String模块下的函数来修改——但字符串是常量,一旦被创建就不可能发生改变…

US$98 Yanhua Mini ACDP Module4 BMW 35080, 35160DO WT EEPROM Read Write

Yanhua Mini ACDP Module 4 BMW 35080, 35160DO WT EEPROM Read & WriteNo need soldering.Function:Read and write BMW M35080, 35160DO WT etc EEPROM Yanhua Mini ACDP Module 4 Package includes:Item No. Ad…

US$98 Yanhua Mini ACDP Module4 BMW 35080, 35160DO WT EEPROM Read Write

Yanhua Mini ACDP Module 4 BMW 35080, 35160DO WT EEPROM Read & WriteNo need soldering.Function:Read and write BMW M35080, 35160DO WT etc EEPROM Yanhua Mini ACDP Module 4 Package includes:Item No. Ad…

深入解析:K8s学习笔记(二) Pod入门与实战

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

现代汽车前瞻杯2025牛客暑期多校训练营3

F Flower 题意简化: 有一朵初始有n片花瓣的花,Yuki会按轮次摘花瓣:每轮操作中,她先摘a片花瓣,之后再摘b片花瓣;若剩余花瓣不足,就把剩下的全部摘完。这个过程会持续到所有花瓣被摘完为止。 Yuki的规则是:当且仅…

详细介绍:[新启航]白光干涉仪在微透镜阵列微观 3D 轮廓测量中的应用解析

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

实用指南:多技术融合提升环境生态水文、土地土壤、农业大气等领域的数据分析与项目科研水平

实用指南:多技术融合提升环境生态水文、土地土壤、农业大气等领域的数据分析与项目科研水平pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !impor…

【F#学习】“变量”?绑定!

绑定 在F#中,给一个值标记上名字的过程叫作绑定(binding)。绑定是不可更改的,就像C#语言中的readonly或者const一样。因此,我们称这样的东西为绑定而非变量。由于F#是静态类型语言,所有的绑定必须在编译期就明确…

2023 CCPC 深圳 F

F. Gift 基环树处理环。 给一棵基环树,要求删掉一条边后还是一棵树,说明只能删掉这棵基环树上的环上的边。 删掉边后还要保证以 \(p\) 作为根节点时,其他节点的儿子数量不超过 \(3\),说明根节点的度数一定是小于等…

完整教程:【算法】双指针(三)[快慢指针]-快乐数

完整教程:【算法】双指针(三)[快慢指针]-快乐数pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", …

9.19做题资料:哈希表查找时间复杂度分析

好的,我用一个简单的比喻来解释,就像你在学校里找座位一样!1. 哈希表是什么? 想象一个教室里有好多桌子(这些桌子就是哈希表)。每张桌子都有一个编号(比如1号桌、2号桌、3号桌……)。老师规定:每个同学必须坐…

CF2143F Increasing Xor

我咋天天忘。还怎么学 OI 啊。 题意 给定长度为 \(n\) 的序列 \(a\),\(q\) 次询问给定 \(l,r\),每次查询提取出 \([l,r]\) 这段子区间,在这段子区间中你能执行任意次操作,每次操作任选 \(l\le i\le j\le r\) 然后 …

提到链接,你能想到什么

linux中的链接文件和虚拟机的克隆技术一.链接文件 在了解链接文件两种类型之前,必须先了解的知识: 文件在Linux中被分成两部分:数据(data block)和文件元数据(inode) inode与block 每个文件都有一个 inode(索引节…

实用指南:容器逃逸漏洞

实用指南:容器逃逸漏洞pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", &qu…

实用指南:容器逃逸漏洞

实用指南:容器逃逸漏洞pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", &qu…

深入解析:卷对卷(Roll-to-Roll,R2R)技术的应用领域和技术进展

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …