Python 学习之虚拟环境
一、为什么需要虚拟环境
到目前位置我们所有的第三方包安装都是直接通过 pip install xx 的方式进行安装的,这样安装会将那个包安装到你的系统级的 python 环境中。但是这样有一个问题,就是如果你现在 Diango 1.10.x写了个网站,然后你的领导跟你说,之前有一个旧项目是用Django 0.9 开发的,让你来维护,但是 Django 1.10 不再兼容 Django 0.9 的一些语法了。这时候就会碰到一个问题,我如何在我的电脑中同时拥有 Django 1.10 和 Django 0.9 两套环境呢? 这时候我们就可以通过虚拟环境来解决这个问题。
二、如何使用虚拟环境
注意:以下操作是在macbook pro M2 系统中执行
1、安装virtualenv:
pip install virtualenv //安装在python2的环境中
pip3 install virtualenv //安装在python3的环境中
2、创建虚拟环境
virtualenv [虚拟环境的名字] ,mac 默认创建的路径是在/User/[你的电脑用户名]下面
如果你当前的 Python3/Scripts 的查找路径在 Python2/Scripts 的前面,那么将会使用python3 作为这个虚拟环境的解释器。如果 python2/Scripts 在 python3/Scripts 前面,那么将会便用 python2 来作为这个虚拟环境的解释器。
3、进入环境
虚拟环境创建好了以后,那么可以进入到这个虚拟环境中,然后安装一些第三方包,进入虚拟环境在不同的操作系统中有不同的方式,一般分为两种,第一种是windows ,第二种是*nix :
- windows 进入虚拟环境:进入到虚拟环境的 Scripts 文件夹中,然后执行 activate。
- *nix进入虚拟环境: source /path/to/virtualenv/bin/activate 一旦你进入到了这个虚拟环境中,你安装包,卸载包都是在这个虚拟环境中,不会影响到外面的环境。
sourse /User/[你的电脑用户名]/虚拟环境名字/bin/activate
4、退出虚拟环境
deactivate 退出当前虚拟环境
5、删除虚拟环境
rm -rf [虚拟环境目录]
三、virtualenvwrapper
virtualenvwrapper 这个软件包可以让我们管理虚拟环境变得更加简单,不用再跑到某个目录下通过 virtualenv 来创建虚拟环境,并目激活的时候也要跑到具体的目录下去激活,
1、安装virtualenvwrapper
注意:安装virtualenvwrapper时会自动将virtualenv安装
*nix: pip install virtualenvwrapper
windows: pip instal1 virtualenvwrapper-win
2、 virtualenvwrapper 的基本使用
- 创建虚拟环境:mkvirtualenv my_env
- 切换到某个虚拟环境 workon my_env
- 退出当前虚拟环境 deactivate
- 删除某个虚拟环境 rmvirtualenv my_env
- 列出所有虚拟环境 lsvirtualenv
- 进入到虚拟环境所在的目录 cdvirtualenv
3、修改mkvirtualenv的默认路径
修改WORKON_HOME 环境变量
四、报错
第一:问题:使用mkvirtualenv 创建虚拟环境终端报:zsh: command not found: mkvirtualenv
解决: 根据下面步骤配置环境变量
1、新建文件夹virtualenvs 方便管理多个虚拟环境
mkdir $HOME/.virtualenvs
2、查看virtualenvwrapper.sh位置
which virtualenvwrapper.sh
我的路径:/Library/Frameworks/Python.framework/Versions/3.12/bin//virtualenvwrapper.sh
3、查看Python3位置
which python3
我的路径:/Library/Frameworks/Python.framework/Versions/3.12/bin//python3
4、查看virtualenv位置
find / -name "virtualenv"
我的路径:/Library/Frameworks/Python.framework/Versions/3.12/bin/virtualenv
5、设置环境变量
- open -e ~/.bash_profile 以编辑模式打开bash_profile
- 在 bash_profile中添加
#virtualenvwrapper
export WORKON_HOME=~/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.12/bin//python3
# 指定virtualenv的路径
export VIRTUALENVWRAPPER_VIRTUALENV=/Library/Frameworks/Python.framework/Versions/3.12/bin/virtualenv
source /Library/Frameworks/Python.framework/Versions/3.12/bin//virtualenvwrapper.sh
command+S 保存,并在终端输入 source ~/.bash_profile 使上述修改生效
参考链接:【2024】 Mac 安装virtualenvwrapper 、环境配置_mac virtualenvwrapper-CSDN博客
新问题:注意:重启终端后再运行mkvirtualenv 的命令,还是会报zsh: command not found: mkvirtualenv,这里再次执行source ~/.bash_profile 即可解决问题,目前尚未寻找到更好的解决方式。欢迎大家来提供新的解决办法!
原文地址:https://blog.csdn.net/weixin_45630548/article/details/142487208
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!