Mac m1 python3 创建虚拟环境
我不得不吐槽一下,最近在使用
python
创建
virtualenv
,遇到了配置问题,我百度了下,解决问题的文章倒是不少,但是解决办法都是惊人的相似,文章不少,内容写的一模一样
很多人写文章都是为了吸粉,随意 copy
、转载,于是在我们遇到问题的时候,你会发现,解决方案根本找不到
看完之后,你就会发现:根本不需要卸载 python3 等无效的解决方案,一次性解决你的问题
不吐槽了,已卒……
本人环境介绍:
MacbookPro M1 + Python3
Mac自带的是python2.7,我自己安装了python3.9
关于python3的安装,请移步: https://blog.csdn.net/hell_oword/article/details/1131823011、mac搭建虚拟环境的步骤
网上的一般安装步骤
-
安装 virtualenv
# 隔离Python环境的工具 sudo pip3 install virtualenv # 便于使用和管理 virtualenv sudo pip3 install virtualenvwrapper
-
创建一个虚拟环境,通过该步骤检查命令是否可以用
mkvirtualenv -p python3 py3_django
-
如果提示找不到
mkvirtualenv
命令,须配置环境变量按照网上的一般教程配置如下,配置后根本不行,有问题
# 1. 打开~/.bashrc文件,并添加如下 export WORKON_HOME=$HOME/.virtualenvs source /usr/local/bin/virtualenvwrapper.sh # 2. 刷新的配置 source ~/.bashrc
2、问题解决(重点)
-
问题合集
① virtualenvwrapper.sh 的路径错误,先确定你的
virtualenvwrapper.sh
的路径# 第一种 /usr/local/bin/virtualenvwrapper.sh # 第二种 /Library/Frameworks/Python.framework/Versions/3.9/bin/virtualenvwrapper.sh
② Mac的配置文件使用错误,你需要确认你的环境变量配置文件是否为
~/.bash_profile
③
/usr/bin/python3
这个地址下是否有你的python3
④ 配置后记得执行source ~/.bash_profile
或者 关闭终端并重新打开
更多关于bash_profile
的配置问题,请移步我的这篇博客
https://blog.csdn.net/hell_oword/article/details/113182301 -
配置步骤
① 我的环境变量配置文件为
~/.bash_profile
,我的virtualenvwrapper.sh
的路径为这个# 在~/.bash_profile添加以下内容 export WORKON_HOME=$HOME/.virtualenvs source /Library/Frameworks/Python.framework/Versions/3.9/bin/virtualenvwrapper.sh
发生了报错:
/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: No module named virtualenvwrapper virtualenvwrapper.sh: There was a problem running the initialization hooks. If Python could not import the module virtualenvwrapper.hook_loader, check that virtualenvwrapper has been installed for VIRTUALENVWRAPPER_PYTHON=/usr/bin/python and that PATH is set properly.
② 按照网上说的,我进行了更改:添加 Python 3的映射地址
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 export WORKON_HOME=$HOME/.virtualenvs source /Library/Frameworks/Python.framework/Versions/3.9/bin/virtualenvwrapper.sh
发生了报错:很明显这个映射地址不对
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun virtualenvwrapper.sh: There was a problem running the initialization hooks. If Python could not import the module virtualenvwrapper.hook_loader, check that virtualenvwrapper has been installed for VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 and that PATH is set properly.
3、终极解决方案
-
关于virtualenv的方案,官网已经给出了不同环境的配置方案,地址
https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/development_environment
-
Mac的两种配置方式,请根据你的
virtualenvwrapper.sh
路径实际配置① 第一种
# 由于我的python版本为3.9,于是我将3.7 改成3.9 export WORKON_HOME=$HOME/.virtualenvs export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.9/bin/python3 export PROJECT_HOME=$HOME/Devel source /Library/Frameworks/Python.framework/Versions/3.9/bin/virtualenvwrapper.sh
② 第二种
export WORKON_HOME=$HOME/.virtualenvs export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 export PROJECT_HOME=$HOME/Devel source /usr/local/bin/virtualenvwrapper.sh
-
Ubuntu 的虚拟环境配置
export WORKON_HOME=$HOME/.virtualenvs export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 export VIRTUALENVWRAPPER_VIRTUALENV_ARGS=' -p /usr/bin/python3 ' export PROJECT_HOME=$HOME/Devel source /usr/local/bin/virtualenvwrapper.sh
-
Win10的 虚拟环境配置
pip3 install virtualenvwrapper-win
-
大功告成,成功创建虚拟环境