先安装Miniforge3,迁移完env 目录再卸载Anaconda

迁移之后再配置env目录的完全权限

Jupyter可以单独装

删除环境的指令还是使用conda的不然删不干净

conda remove -n temp --all -y

# mamba删不干净
mamba remove -n temp --all

卸载Anaconda

  • 安装官方推荐的卸载库,执行库的命令(这一步就把散落在用户目录下的相关目录或删除或放在%USERPROFILE%\.anaconda_backup\了)

conda install anaconda-clean
anaconda-clean --yes  # 会清理用户目录的配置
  • 使用geek.exe卸载Anaconda,(没有的话,直接使用自带的卸载程序也可以)

  • %USERPROFILE%\.anaconda_backup\ 目录的东西挑选需要的留,不需要就全部删掉

.condarc文件

原来Anaconda的是在用户目录下%USERPROFILE%\.condarc,Miniforge3的是在安装根目录下C:\ProgramData\miniforge3\.condarc

使用chsrc set conda,获取到的镜像,经过ChatGPT转换为适合Miniforge3的(因为chsrc暂时还没有支持Miniforge3)

可用.condarc配置(需要验证一下)不要在配置文件中写中文注释,不然conda命令将不可用

# ----------------------------------------
# 主要使用的 channels(软件包来源)
# Miniforge 的理念:只使用 conda-forge
# ----------------------------------------
channels:
  - conda-forge    # 优先从 conda-forge 获取所有包

# ----------------------------------------
# 显示包的真实来源渠道,避免混用渠道导致冲突
# 建议保持 true
# ----------------------------------------
show_channel_urls: true

# ----------------------------------------
# strict:严格优先级,不允许跨渠道混装同名包
# 这是 conda-forge 官方推荐的安全模式
# 能避免 95% 的依赖冲突
# ----------------------------------------
channel_priority: strict

# ----------------------------------------
# 替代默认仓库(Miniforge 默认只有 conda-forge)
# 这里使用南京大学镜像的 conda-forge 作为默认源
# ----------------------------------------
default_channels:
  - https://mirror.nju.edu.cn/anaconda/cloud/conda-forge

# ----------------------------------------
# 自定义渠道(cloud 下的子仓库)
# 如果你需要 bioconda 或 pytorch,可以加上
# 南京大学镜像同时支持这些 cloud 子仓库
# ----------------------------------------
custom_channels:
  conda-forge: https://mirror.nju.edu.cn/anaconda/cloud
  bioconda: https://mirror.nju.edu.cn/anaconda/cloud
  pytorch: https://mirror.nju.edu.cn/anaconda/cloud

# ----------------------------------------
# Miniforge3 包缓存目录
# 建议放到全局的 C:\ProgramData,避免用户权限问题
# ----------------------------------------
pkgs_dirs:
  - C:\ProgramData\miniforge3\pkgs\

# ----------------------------------------
# Miniforge3 环境目录
# 所有 conda/mamba 环境都会放在这里
# ----------------------------------------
envs_dirs:
  - C:\ProgramData\miniforge3\envs\

.condarc原文件备份

channels:
  - conda-forge
mirrored_channels:
  conda-forge:
    - https://conda.anaconda.org/conda-forge
    - https://prefix.dev/conda-forge

Anaconda的.condarc

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirror.nju.edu.cn/anaconda/pkgs/main
  - https://mirror.nju.edu.cn/anaconda/pkgs/r
  - https://mirror.nju.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirror.nju.edu.cn/anaconda/cloud
  pytorch: https://mirror.nju.edu.cn/anaconda/cloud

pkgs_dirsenvs_dirs

在 conda 配置中,加上 pkgs_dirsenvs_dirs 与不加的主要区别在于包和环境的存储位置控制。

不加这两个配置的情况

# 默认行为
channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirror.nju.edu.cn/anaconda/pkgs/main
  - https://mirror.nju.edu.cn/anaconda/pkgs/r
  - https://mirror.nju.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirror.nju.edu.cn/anaconda/cloud
  pytorch: https://mirror.nju.edu.cn/anaconda/cloud
# 没有指定 pkgs_dirs 和 envs_dirs

conda 会使用默认位置

  • Windows:C:\Users\<用户名>\.conda\pkgs\

  • Linux/Mac:~/.conda/pkgs/

加上这两个配置的情况

# 显式指定
pkgs_dirs:
  - D:\tools\miniforge3\pkgs\
envs_dirs:
  - D:\tools\miniforge3\envs\

主要区别:

方面

不加配置(默认)

加上配置(自定义)

存储位置

系统盘(C盘)

D盘指定目录

空间管理

可能占用系统盘

可避开系统盘空间不足

多用户共享

用户独立

可配置共享位置

路径长度

可能路径较长

可设更短路径

性能

依赖系统盘速度

可放更快磁盘(如SSD)

备份管理

分散在不同位置

集中管理

具体用途:

  1. 避免系统盘空间不足

    # 把conda包移到非系统盘
    pkgs_dirs:
      - D:\anaconda\pkgs\
    envs_dirs:
      - D:\anaconda\envs\
  2. 多路径配置(优先级顺序)

    pkgs_dirs:
      - D:\fast_ssd\conda_pkgs\    # 优先使用SSD
      - E:\hdd\conda_pkgs\         # 备选HDD
      - C:\Users\me\.conda\pkgs\   # 最后使用默认
  3. 团队共享配置

    # 局域网内共享环境
    pkgs_dirs:
      - \\server\shared\conda\pkgs\
      - D:\local\conda\pkgs\

建议配置:

  1. Windows用户(特别是C盘空间有限):

    pkgs_dirs:
      - D:\conda\pkgs\
    envs_dirs:
      - D:\conda\envs\
      - C:\Users\用户名\.conda\envs\  # 备选
  2. Linux/Mac用户

    pkgs_dirs:
      - /opt/conda/pkgs/
      - /home/用户名/.conda/pkgs/

注意事项:

  1. 修改后已存在的包不会自动移动

  2. 需要手动迁移或重新安装

  3. 确保路径存在且有写入权限

  4. 使用conda info查看当前配置

总结: 加上这两个配置是为了更好地管理磁盘空间和存储位置,特别适合C盘空间有限的Windows用户,或者是需要集中管理环境的团队场景。

mamba命令的使用

遇到初始化报错

C:\Users\Administrator\Desktop\ip-checker>mamba activate py311

critical libmamba Shell not initialized

'mamba' is running as a subprocess and can't modify the parent shell.
Thus you must initialize your shell before using activate and deactivate.


To automatically initialize all future (cmd.exe) shells, run:
    $ mamba shell init --shell cmd.exe --root-prefix=~/.local/share/mamba
If your shell was already initialized, reinitialize your shell with:
    $ mamba shell reinit --shell cmd.exe
Otherwise, this may be an issue. In the meantime you can run commands. See:
    $ mamba run --help

Supported shells are {bash, zsh, csh, posix, xonsh, cmd.exe, powershell, fish, nu}.

报错中提到的路径--root-prefix=~/.local/share/mamba 是linux的,Windows就放在miniforge3安装目录就行

应该以管理员身份打开cmd,然后执行

mamba shell init --shell cmd.exe --root-prefix="C:\ProgramData\miniforge3"

如果想拥有完整 shell init/reinit 功能

需要升级 Mamba:

conda install -n base -c conda-forge mamba=2.5

或:

mamba update -n base -c conda-forge mamba

升级后,你就可以使用:

mamba shell reinit --shell cmd.exe

实际操作

C:\Users\Administrator>mamba --version
2.4.0

C:\Users\Administrator>mamba update -n base -c conda-forge mamba
conda-forge/noarch                                  23.7MB @   9.2MB/s  2.5s
conda-forge/win-64                                  31.9MB @   8.4MB/s  3.7s

Pinned packages:

  - python=3.12

Transaction

  Prefix: C:\ProgramData\miniforge3

  All requested packages already installed


Transaction starting

Transaction finished

C:\Users\Administrator>mamba --version
2.4.0

现在遇到的问题是: base 环境被固定(pinned)到 Python 3.12,导致 Mamba 无法升级。
这使得执行:

mamba update -n base -c conda-forge mamba

但结果是:

All requested packages already installed

即使服务器上已有更新版本(例如 2.5+),Mamba 也无法升级,因为它会破坏你的 pinned Python 3.12 约束。

一、为什么 Mamba 无法升级?

输出里有关键提示:

Pinned packages:
  - python=3.12

这意味着 base 环境中的 python=3.12 是硬性约束(pinned)。
如果新版本 Mamba 依赖更高版本的 Python(或依赖包需要重新解决依赖),则升级会被阻止。

因此 Mamba 2.4.0 看起来“被锁住”了。

二、如何确认 pin 文件?

查看 pinned 文件:

type C:\ProgramData\miniforge3\conda-meta\pinned

如果里面有:

python=3.12

那就解释完全了。

三、解决方案(你可以选择其一)

方案 A:允许升级(推荐)
Step 1:移除 pin
del C:\ProgramData\miniforge3\conda-meta\pinned

或仅删除里面的 python 行。

Step 2:重新尝试升级 Mamba
mamba update -n base -c conda-forge mamba

如果依赖能解决,你将获得 2.5+ 可以使用 mamba shell reinit --shell cmd.exe

方案 B:不动 base,用新环境安装新版 Mamba(更安全)

在 base 保持不变的情况下,新建一个环境:

mamba create -n mamba25 -c conda-forge mamba

激活:

mamba activate mamba25

然后使用这套“升级版的 Mamba”去管理所有环境。

这是专业推荐的方式,因为 base 环境保持稳定最重要。

方案 C:保持现状(不升级)

如果只是为了能使用 reinit,其实没有必要。

当前版本支持:

mamba shell init --shell cmd.exe

这已经足够让使用 mamba activate

如果 可以激活目标虚拟环境,那么完全不需要升级 Mamba,也不需要 reinit。

reinit 只是重新写配置文件,一般根本不会用到。

PyCharm添加解释器区别

5种解释器区别

类型

轻量级

科学计算

隔离性

自动化

适用

System Python

⭐⭐⭐⭐

小脚本

venv

⭐⭐⭐⭐⭐

⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐

Web 项目标准

Conda

⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐

⭐⭐⭐

AI / 科学计算

Pipenv

⭐⭐⭐

⭐⭐

⭐⭐⭐⭐

⭐⭐⭐

有 Pipenv 的旧项目

Poetry

⭐⭐⭐⭐⭐

⭐⭐~⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

现代 Web 项目最佳

python长期支持版2025年排行

Python 3 长期支持(LTS-like)版本对比表(2025 更新)

说明:Python 官方没有“LTS”概念,但业界通常把“生命周期长 + 大量项目采用的稳定版本”视为 LTS-like。

Python 版本

状态(2025)

官方支持结束

使用热度(开发者社区)

大型项目支持度

推荐指数

推荐原因

不适合原因

3.8

已进入安全修复阶段

2025-10

⭐⭐⭐⭐(仍大量企业用)

⭐⭐⭐⭐⭐(Django、Numpy 全支持)

⭐⭐

企业老项目多、非常稳定

生命周期快结束,不适合新项目

3.9

正常维护+安全修复

2026-10

⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐

极其稳定,许多框架长期支持

PurePath 类型提示等功能偏旧

3.10

正式维护中,高热度

2027-10

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐

新旧兼容最佳,项目迁移性强

无 pattern matching 高级特性扩展(在 3.11 才提升性能)

3.11

当前主流版本(稳定 + 高性能)

2028-10

⭐⭐⭐⭐⭐⭐(最受欢迎)

⭐⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐⭐(强推)

性能比 3.10 提升 25%-60%,生态全面跟进

某些老项目可能存在兼容性问题

3.12

新版,高性能,但生态仍在补齐

2029-10

⭐⭐⭐⭐

⭐⭐⭐⭐

⭐⭐⭐⭐

性能继续提升、语法更严格

某些依赖 C 扩展的包刚刚完成适配

3.13

最新版,性能大幅增强(解释器微线程)

2030-10

⭐⭐⭐

⭐⭐

⭐⭐

实验性特性强、未来方向

生态适配中,不推荐生产使用

🌟 最佳选择(2025)推荐

🥇 第一名:Python 3.11(最推荐)

为什么?

  • 性能大幅提升(平均 +35%)

  • 几乎所有主流科学包已完全适配:
    NumPy、Pandas、PyTorch、TensorFlow、FastAPI、Django……

  • 官方支持时间足(到 2028)

  • 大量公司迁移的主流版本

📌 适合:新项目 / 服务端 / AI 项目 / 教育环境

🥈 第二名:Python 3.10(最安全、兼容性最强)

为什么?

  • 生态最成熟,没有几乎任何兼容性坑

  • 企业级项目大量采用(2021–2024 的默认标准)

  • 官方维护到 2027,寿命足够

📌 适合:依赖较多 C/C++ 扩展的项目 / 保守型研发

🥉 第三名:Python 3.12(展望未来)

生态逐渐完善,但仍不如 3.10/3.11 稳定。

🔥 使用热度(根据 GitHub / StackOverflow 2025 趋势)

排名

版本

热度占比

1

Python 3.11

~46%

2

Python 3.10

~28%

3

Python 3.12

~10%

4

Python 3.9

~8%

5

Python 3.8

~6%

🔧 各版本适合场景简述

场景

推荐版本

Web 服务(Django/FastAPI)

3.10 / 3.11

数据科学

3.11 / 3.10

深度学习(PyTorch / TensorFlow)

3.10 或 3.11

生产环境(需稳定)

3.10

未来项目(追新)

3.12

老企业项目

3.8 / 3.9

🧭 总结一句话

2025 年最推荐的 Python 版本是:3.11(性能) 或 3.10(稳定)。
其它版本不是不行,只是不再最佳。