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 ![]() 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 ![]() 应该是环境管理,不叫版本管理吧 用其中之一就行,混用自然混乱 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 ![]() @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 ? |