M1设备Conda环境配置Python3.7遇包找不到问题求助
解决M1设备上Conda创建Python3.7环境失败的问题
方法1:切换到x86_64架构的Conda运行环境
M1的arm64架构下,Conda默认源没有Python3.7的适配包,需用Rosetta2启动x86_64终端操作:
- 右键终端图标选择「使用Rosetta打开」,或在现有终端执行:
arch -x86_64 zsh - 若未安装x86版本的Conda,用你已有的x86版brew安装:
brew install miniconda - 在该x86终端中执行环境创建命令:
conda env create -f environment.yml
此时Conda会从defaults源拉取x86_64架构的Python3.7包,不会出现找不到包的错误。
方法2:让Conda复用已有的Python安装(pyenv/brew版)
可以创建空的Conda环境,直接链接你已安装的Python3.7:
- 创建无默认包的空环境:
conda create --name aiclass --no-default-packages - 激活环境:
conda activate aiclass - 获取pyenv中Python3.7.16的路径:
pyenv which python3.7 - 将该Python链接到Conda环境的bin目录:
ln -sf $(pyenv which python3.7) $CONDA_PREFIX/bin/python ln -sf $(pyenv which python3.7) $CONDA_PREFIX/bin/python3 - 之后用pip安装所需依赖:
pip install numpy pillow pytorch tk
方法3:指定Conda拉取x86_64架构的包
修改你的environment.yml,添加架构指定和兼容源:
name: aiclass channels: - defaults - conda-forge platform: osx-64 dependencies: - python=3.7 - tk - numpy - pillow - pytorch
执行创建命令:
conda env create -f environment.yml
Conda会自动识别osx-64架构,从源中拉取适配的Python3.7包(需Rosetta2支持)
内容的提问来源于stack exchange,提问作者Vijay Tripathi
相关产品推荐
相关产品推荐

