机器上的 Python 解释器装的太多

175 天前
 yuhu96
我的 Mac 上装了很多 Python 环境,除了 Mac 本身自带的之外,还有 Anaconda 、MiniConda 、Python 官网安装的,以及一大堆历史遗留创建的虚拟环境,也不记得是 venv 还是 pipenv 弄得了。因为以前入门没概念,上手就是 pip install ,结果装到哪里自己都不知道。

实际工作中切换或者管理感觉很头疼。

想知道有没有什么工具可以做一下自动化的管理或者清理。
4098 次点击
所在节点    Python
29 条回复
7Wate
175 天前
Pyenv ── https://github.com/pyenv/pyenv

pyenv 是一个用于管理 Python 版本的工具。它允许你在同一台机器上安装和切换多个 Python 版本,避免了不同项目之间由于 Python 版本不同而产生的冲突。通过 pyenv ,你可以轻松地安装特定的 Python 版本,并为不同的项目设置不同的 Python 版本。
laike9m
175 天前
可以看一下这篇文章,推荐了我认为比较合理的 setup

https://laike9m.com/blog/best-python-development-setup-for-2022-and-beyond,144/
lozzow
175 天前
用 rye,每个工程一个自己的环境,就像 node 一样
w568w
175 天前
一项目一环境的话 pdm 就挺好的,用起来很像 yarn 或者 npm 。
TimePPT
175 天前
我现在用 pyenv+poetry ,丝滑
fbichijing
175 天前
虚拟环境名起和项目名相关不就行了?项目与虚拟环境共存亡...
FYFX
175 天前
清理的话,你可以整理一下环境变量(顺便找到当前 python/pip 安装路径),不过根据你装的方式/用的 shell 啥的可能在多个.rc 文件改了 PATH ,管理工具和方法我看别人都说的差不多了
crackidz
175 天前
实际上只需要 miniconda 就足够用了吧...
skyrim61
175 天前
如果使用 pycharm, 用 pycharm 上面的
louisxxx
175 天前
最优解还是装个 orbstack 启动容器,在容器里安全各种环境,而不是直接在 mac 系统里装。
你直接装 mac 系统里清理,迁移,起停都非常难控制
looveh
175 天前
我已经不知道有哪些环境了,随便用。碰到问题再说
tangtang369
175 天前
用 miniconda,建议建立个测试环境,统一安装在这里,没有必要一个项目一个环境,只有那种大型项目单独建立环境,不然你会发现每搞个项目都是安装一堆重复的包,还占用环境,比如你跑 github 上的项目,就建立个 github 环境,以后 github 上拉的项目就用这个环境,除非 python 版本不匹配再新建立,这种项目你跑过一次你会发现基本不会再运行。
keakon
175 天前
每个项目都运行 python -m venv .,然后执行 bin/pip install ...
iX8NEGGn
175 天前
我想问下,2024 年了,python 各种工具创建的虚拟环境可以移动了吗,之前的移动后一些库会用不了,还得重新装。
ysc3839
175 天前
我个人选择用 Homebrew 装 Python 。不喜欢 pyenv ,因为要本地编译。
ysc3839
175 天前
@iX8NEGGn venv 不可移动似乎主要是因为脚本里面写了绝对路径。其实可以考虑手动把 whl 解压到一个目录内,然后把这个目录添加到 sys.path 里面。我在公司的项目里试过这么干,配合 CentOS 内置的 Python 似乎没什么问题。
ihciah
175 天前
推荐统一用 conda
009694
175 天前
只用 miniconda 不就可以了。。
zeusho871
175 天前
poetry ?
ysw
175 天前
Direnv + nix
如果不怕上手难度的话,我用起来挺好的
现在有一个 decency 就是这个封装的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1044631

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX