1
MetroWind 2023-05-05 12:08:14 +08:00
咳咳 conda 自带 venv 的机制:`conda create`
|
2
ispinfx 2023-05-05 12:26:47 +08:00
poetry / pdm
|
3
Macv1994 2023-05-05 12:31:34 +08:00 2
python -m venv venv
|
4
Carson089 2023-05-05 12:35:36 +08:00
算法的最佳实践是 anaconda/miniconda 的 python 版本 与 docker
|
5
Alias4ck 2023-05-05 12:38:35 +08:00
包管理工具可太多了 最近还有个 rye( https://github.com/mitsuhiko/rye)
|
6
NoOneNoBody 2023-05-05 12:56:31 +08:00 1
应该是环境管理,不叫版本管理吧
用其中之一就行,混用自然混乱 conda 在 windows 中的优势是,有些需要编译的包,设计者当初是没有考虑 windows 的,所以在 windows pip 编译安装会出现奇奇怪怪的问题,安装失败;其中部分,conda 做了预编译,装起来就比较顺 |
7
dayeye2006199 2023-05-05 13:11:49 +08:00 via Android
用了 conda 就不用 pyenv 了。
conda 可以管理 py 版本和环境。 |
8
hb751968840 2023-05-05 13:22:56 +08:00
pyenv 机器学习踩了一个坑,不推荐,安装 torch 特定版本没办法使用-f https://download.pytorch.org/whl/torch_stable.html
|
9
ykk 2023-05-05 13:48:43 +08:00
用 conda ,四年算法没用过 pyenv
|
10
craiiz 2023-05-05 14:26:23 +08:00
之前一直有 pyven, 后来有一次 pip 安装 triton 一直失败,conda 安装 一次成功之后就转 conda 了
|
11
BBCCBB 2023-05-05 14:28:46 +08:00
直接用 miniconda, 管理 python 多个环境, 安装你可以全部 pip, 也可以全部 conda, 也可以 poetry 这种..
conda 比 pyenv 好.. |
12
declandragon 2023-05-05 14:51:07 +08:00
用三楼的方式 python -m venv venv
|
13
hertzry 2023-05-05 15:11:46 +08:00
无需安装 python ,直接 miniconda 走起,一个项目开一个虚拟环境,默认 base 环境不动。
conda create -n your_env_name conda activate your_env_name conda install package_name |
14
bigjack 2023-05-05 15:13:39 +08:00
virtualenv
|
15
evemoo 2023-05-05 15:26:42 +08:00
virtualenv +1
不过迁移的时候要确保两边环境的默认 Python 版本一致 |
16
iorilu 2023-05-05 15:57:34 +08:00 via Android
别折腾了, 随便那个平台,用 miniconda 就行
|
17
jaredyam 2023-05-05 16:13:28 +08:00
miniconda 够用了
|
18
paopjian 2023-05-05 16:47:03 +08:00
conda/miniconda 好用的地方是可以指定 python 版本,venv 的好处是库比较纯净.
|
19
alne 2023-05-05 17:02:51 +08:00
conda 吧,机器学习一堆二进制包用 conda 不至于搞乱系统环境
|
20
Wataru 2023-05-05 17:11:19 +08:00
conda 好点,一个东西一个环境,不会搞乱
|
21
doraemon0711 OP 谢谢,准备试试 miniconda ,再问个问题,如果不动 base 环境,但想加一些全局的命令(例如 tldr)该怎么做
|
22
apake 2023-05-05 19:15:58 +08:00
版本管理 miniconda/pyenv + 包管理 pip/poetry/pdm. 搞机器学习一般用 conda
|
23
Ricardoo 2023-05-05 19:17:40 +08:00 1
@doraemon0711 #21 激活的环境会继承全局命令的,不用担心。它实际是填加新环境的 bin 目录到 PATH 中,拿{conda_install_home}/envs/{env_name}/bin 里的命令覆盖掉全局同名命令,非同名命令在各个 conda 环境里都可以使用
|
24
SenLief 2023-05-05 19:49:21 +08:00 via iPhone
我自己使用 miniconda 和 venv 的,conda 管理版本,venv 创建环境。
|
25
whitewinds 2023-05-05 20:28:02 +08:00
miniconda 管理虚拟环境
pip-compile 管理包 |
26
zengxs 2023-05-05 21:11:30 +08:00
需要预编译的依赖就用 conda
最求新 python 版本就 pyenv |
27
cherbim 2023-05-05 21:31:19 +08:00
个人建议,无脑选择 conda 吧
|
28
wizardyhnr 2023-05-05 22:44:12 +08:00
不要用 conda 了,以前 pip 编译麻烦的时候 conda 的编译包很方便。但现在 pip 支持 wheel 很久了,用 pip 安装的 numpy/scipy/pytorch 都是编译好的,想想 pytorch 用的是 CUDA 的接口,pip 也可以一行命令安装了。conda 占内存大,安装包检查时间长,channel 里面一些小众包也没有,最后都是 conda/pip 混用。pyenv 也是可以创建多个环境的。
|
29
wizardyhnr 2023-05-05 22:46:09 +08:00
主流操作系统现在都支持安装不同版本的 Python 了,你用不同版本的 pyenv 就可以创建不同版本号的环境了。
|
30
amlee 2023-05-05 22:46:34 +08:00
@doraemon0711 有一个 pipx ,可以将 python 的命令行软件添加到全局 path ,又不影响 base 环境,很好用
|
31
qYs9wxnXG96c6z1t 2023-05-05 23:32:14 +08:00
没用过 conda ,一直用的 pipenv 管理环境
|
32
gumupaier 2023-05-06 11:27:04 +08:00
建议无脑选择 conda
|
33
Oilybear 2023-05-06 14:51:11 +08:00
1. conda env 、pyenv 都是环境管理,允许多个 python 环境,pip 和 conda install 是单个环境中的第三方库 /包管理。
2. 现在的优劣就像楼上#28 说的,剩下的就看你个人选择了。 3. 至于楼上那个#13 说的无需安装 python 的,什么叫无需安装?安装无非不就是在你磁盘留下相关文件,环境变量加上可执行文件的所在目录让 OS 能找得到可以用上? conda create -n fuxkurtalk python=3.x 不下载对应的 python ? |