chatgpt 也没给一个实用的方案,你们都是怎么管理自己的 python 环境的?
1
stimw 22 小时 54 分钟前 快 2026 了,uv 应该是版本答案了吧
https://docs.astral.sh/uv/ |
2
MareDevi 22 小时 53 分钟前
pdm 启用 uv 后端,同时搭配 mise 使用体验更佳
|
3
TArysiyehua 22 小时 51 分钟前
.venv
|
4
superrichman 22 小时 51 分钟前
pycharm 自动管理虚拟环境。
你要不喜欢 ide 就用 pyenv ,设置好之后 cd 进目录自动进项目的虚拟环境。 |
5
jpyl0423 22 小时 48 分钟前
没用过 conda ,vscode 不是打开项目自己激活环境吗
|
6
actors111 22 小时 42 分钟前
一直用 venv , conda 太笨重了.
|
7
deplives 22 小时 42 分钟前
2025 年了,还在用 conda 吗
|
8
heyzenxu 22 小时 36 分钟前
远一点的 poetry 2018 年就有了, 近一点的 uv 和 pixi, 怎么就难用了
|
9
kxg3030 22 小时 36 分钟前 python -m venv .venv
linux:source .venv/bin/active windows:source .venv/Scripts/active 这很难吗 |
10
ratazzi 22 小时 31 分钟前
mise + uv 好用的很
|
11
whenov 22 小时 26 分钟前
shell 设个短点的 alias 不就行了
|
12
weixind 22 小时 23 分钟前 |
13
crocoBaby 22 小时 15 分钟前
昨晚刚刷到的 python 包管理教程,就用 uv 可以了,相当于 npm 的 yarn
|
14
privil 22 小时 13 分钟前
每次进入项目都要手动执行一下 conda activate xxx 你就不能装个自动激活环境的程序吗? direnv 了解下
|
15
glacer 22 小时 10 分钟前
习惯用 venv 了,conda 一直玩不来,太重了
|
16
fkdtz 21 小时 47 分钟前
恰恰相反,我就喜欢这种一切尽在掌控的感觉
想切什么环境、当前在什么环境,完全自己说了算 嫌麻烦配命令就好了 |
17
Greendays 21 小时 32 分钟前
就用的 venv ,一个项目一个,比较吃硬盘但是很稳定。
|
18
hertzry 21 小时 28 分钟前
function ca(){
conda activate $1 } |
19
donaldturinglee 21 小时 21 分钟前
每个项目是独立的环境应该才是正确的做法吧。统一的环境除非你只做单个项目,不然你只要一个项目的依赖出了问题,其余的一定会爆炸
|
20
YanSeven 20 小时 57 分钟前
uv 随着大模型的兴起应该算是主流方案了?
|
21
treblex 20 小时 47 分钟前 via iPhone
UV 有本地梯子还行,上服务器更麻烦了,哎
|
22
Aprdec 20 小时 29 分钟前
..venv 不也得激活环境吗 楼上和 conda 有啥区别 楼主不就是嫌麻烦吗
|
23
longredzzz 20 小时 26 分钟前
给项目配一下 direnv 实现 shell 自动激活环境。
python 环境管理我用 pixi,能管理 conda 包 和 pypi 包 |
24
craftsmanship 20 小时 25 分钟前 via Android
UV 你值得拥有
|
25
skuuhui 20 小时 16 分钟前
自从用 AI 编程,从来没有在命令行输入过 python 相关命令了
|
26
reoah2 20 小时 12 分钟前
windows 下 vscode 打开 terminal 会自动执行:./venv/Scripts/Activate.ps1 ,一进 terminal 就是虚拟环境了,这很好用啊
|
27
wuruxu 19 小时 42 分钟前
apt-get 想要什么包都有
|
28
coreJK 19 小时 37 分钟前 从开始学 python 使用自带的 venv 到现在
pyenv ,pix ,pdm ,uv 都用过了,分享一点点心得吧 半自动 1. pyenv: 管理多版本的 python 环境好手,windows 和 ubuntu 中都可以实现方便的多版本切换,但是要注意和其他修改环境变量的程序(比如 ros 机器人开发框架),但是也得科学上网的情况下用,不然容易卡在下载 python 安装包的时候 2. pipx: 这个可以理解是,用来管理用 python 开发和发布的一些工具管理,比如 labelme ,youtube dowload 这类工具,可以独立成一个系统工具(其实还是建立了一个虚拟环境,然后再在这个独立的环境安装了工具,避免污染系统的 pip 环境依赖) 往“全自动”方向发展 3.pdm: 在他之前还有一个 poetry ,能够管 python 一整个开发周期(版本管理、环境管理、依赖管理、打包 whl 分发),pdm 有一点比 uv 方便,他管理的依赖可以跨平台,在写 pyqt 的时候,loguru 模块在 win 和 linux 环境下会到一个 win32ctime 模块,pdm 默默的做了模块区分系统环境的事情,帮我节省了很多(我尝试用 uv 重新管理这个项目,结果出现了模块依赖的问题,uv 好像也有区分的办法,需要自己编写目前,我用得还不熟 XD ) 4.uv: 非常快,做的事情和 pdm 、poetry 差不多,也是为了能够管理整个开发周期,还可以做 pipx 做的事情,管理一些开发工具 pdm 、和 uv 一定要注意他们的缓存,空间不够很可能爆目录目录..., 本人也还在摸索和在实际工作中使用,才学疏浅,大佬们指正 |
29
coreJK 19 小时 32 分钟前
补充一点,pdm 和 uv 都可以针对特殊的 pytorch 类的包(包括但不限于),专门分配对应的 index
版主应该最容易遇到的是这个问题,和 pytorch 有关的,现在可以参考这两个工具的方案 1. uv 的方案:https://uv.oaix.tech/guides/integration/pytorch/?h=pytorch 2. pdm 的方案: https://pdm-project.org/zh-cn/latest/usage/config/#_5 |
30
kneo 19 小时 32 分钟前
python 和 node ,人称依赖管理界的卧龙凤雏。现在 node 说我的 npm 比你好用一万倍,说完自己都笑了。
|
31
liu938651469 19 小时 30 分钟前 via Android
pyenv 任意 py 版本 再和 uv 配合好了
|
32
est 19 小时 27 分钟前 与其说是 py 的包管理烂,不如说 py 是 C 库的附庸。
py 的所有包管理机制烂的根源就是 .so .dll 不好管理导致的。还有一些逆天玩意是源码分发,你就可劲儿折腾吧。 你觉得 npm 好用,那是因为手没伸到这么长而已。纯 .js 包有啥好管理的。 |
33
litchinn 19 小时 19 分钟前 npm 感觉半斤八两,工具越多的一般越难用,典型的如 pip 和 npm ,人们分别继续开发了 venv ,conda ,yarn ,pnpm...
现在 python 的版本答案是 uv 感觉包管理最好的就是 cargo 了 |
34
viking602 19 小时 14 分钟前
建议使用 uv
|
35
jsq2627 19 小时 13 分钟前
@kneo pnpm 已经把 npm 的不足都修正了。现在 pnpm/npm 的问题是,js 生态碎片化,很多简单的功能都要发 npm 包,导致一个项目有成千上万依赖。
|
36
Suaxi 19 小时 8 分钟前
conda 我是一个项目一个 env ,就首次安装的时候 active 一下,也还行
|
37
1daydayde 19 小时 6 分钟前
#9 可以满足临时的小脚本项目
,如果你依赖多,那么可以用 uv 来管理,在初始化项目的时候安装速度不比 npm 快一万倍? |
38
huijiewei 18 小时 50 分钟前
别提 npm 了,被攻击的生活不能自理了都
|
39
wu67 18 小时 36 分钟前
venv 呀...以我自己玩的 fastapi 为例
python3 -m venv venv Makefile 里面写好: VENV_ACTIVATE = . venv/bin/activate dev: 写个 tab 在这$(VENV_ACTIVATE) && uvicorn main:app --reload --host 0.0.0.0 --port=3000 然后手动写好 requirements.txt, 执行: pip install -r requirements.txt 启动的时候跑 make dev 就行了, ctrl c 终结命令的时候, 会自动退出虚拟环境 |
40
uni 18 小时 32 分钟前
gpt 竟然没有给你 uv ?这有点出乎我意料
|
41
smlcgx 18 小时 26 分钟前 via iPhone
感觉 venv 够用了,一行代码进退环境,遇到新问题再想新办法
|
42
tisswb 17 小时 50 分钟前
windows 开发:官方安装包+venv ,生产环境:pyenv+virtualenv
|
43
jukanntenn 17 小时 43 分钟前
你说比不上 cargo 我是接受的,说比不上 npm 是不是侮辱性太大了?
|
44
guanzhangzhang 17 小时 37 分钟前
试试 devcontainer
|
45
RyougiShiki 17 小时 31 分钟前
python venv 是否 active 相当于 npm 是否-g 参数,npm 默认生成配置文件和使用虚拟环境是个好习惯,python 毕竟设计的比较早算历史问题吧
|
46
JShen 17 小时 11 分钟前
@stimw 赞了,主 Java 选手,终于找到了好用的方式,刚才用 gpt 实践了 5 分钟,真的是非常 fast 好用。 类似 npm 这种软件。啥时候有可以管理 jdk 版本的软件,现在就是 8 ,到老也是 8.
|
47
y1y1 17 小时 9 分钟前
npm ?你拿什么做比较不好
|
48
conn4575 17 小时 1 分钟前 via Android
pip ,pyenv ,conda ,poetry ,uv ,python 里面一个虚拟环境和包管理也是折腾吐了🤢
|
49
hxhc 16 小时 58 分钟前
conda activate 一下有什么不好吗,明确自己在哪个环境,省的搞混了搞炸了
|
50
hicdn 16 小时 54 分钟前
推荐 mise https://github.com/jdx/mise ,太香了。
|
52
dust2 16 小时 36 分钟前
uv 工具啊
|
53
yh7gdiaYW 16 小时 5 分钟前
你用的啥 ide 还需要考虑这个问题? vscode 自动会给项目绑定好虚拟环境啊
|
54
rocmax 15 小时 58 分钟前 via Android
你一定没用过 mise 的 auto activation
https://mise.jdx.dev/lang/python.html#automatic-virtualenv-activation |
55
Sped0n 15 小时 53 分钟前
|
56
Hudiebbk 15 小时 45 分钟前
uv 无敌好用的
|
57
thiiadoewjwe 15 小时 8 分钟前
C++的第三方库,能把人折磨死
|
58
jonty 14 小时 43 分钟前
|
59
amon 14 小时 42 分钟前
有请楼下上一张 node_modules 的那张梗图
|
61
matcloud 13 小时 46 分钟前
uv
|
62
fgwmlhdkkkw 12 小时 49 分钟前 via Android
shell 都有 profile ,你可以修改。
|
63
wonderfulcxm 11 小时 15 分钟前
可拉倒吧,python 比 node 那套好用一万倍
|
64
KaitoHH 11 小时 9 分钟前 conda 不完全是一个纯粹的 python 包管理器,因为它还可以帮你管理非 python 依赖,比如帮你在非系统层面安装各种 lib 库、cuda 、nvcc 等等,不污染本身的系统环境,这一块还是比别的 python 包管理器好不少的
|
65
aarontian 11 小时 0 分钟前
我觉得 conda 挺好用的。。适合本地固定几个环境,但可能会有一堆项目的场景,配合 jupyter 也好用,需要做点数据分析的话很好使。
几乎所有 IDE 进 terminal 都会自动 conda activate ,需要手动敲的时候很少。 部署的话直接 docker ,也就维护个 requirements.txt uv 也不错,不过我本机开发习惯比较随意一些,一方面项目很多,一方面有时候随便开个目录就开写了,还是喜欢用 conda |
66
vitality 10 小时 39 分钟前
uv ,我对 uv 的评价是快到极致。
|
67
JCZ2MkKb5S8ZX9pq 10 小时 24 分钟前
啥时候 uv 能支持 pnpm 那种全局 store 就好了,不然还是太占空间了。
我这种碎小项目多的 pandas 啥的重复装可受不了。 |
68
Eureka0 9 小时 58 分钟前
@JCZ2MkKb5S8ZX9pq uv 是支持的,把 [link-mode]( https://docs.astral.sh/uv/reference/settings/#link-mode) 设置成 symlink 就行了,我就是这么用的,能节省不少空间
|
70
yjhatfdu2 59 分钟前
conda 太傻逼了,用了小心给你发律师函
|
71
xuyang2 3 分钟前
> 为什么 Python 的包管理这么难用
因为 Python 生于 1994 年 |