新Mac安装python3和虚拟环境

1、尝试安装python3

brew install python3
zsh: command not found: brew
所以下一步应该是安装brew

2、安装brew提示xcode-select的相关错误

输入如下命令安装brew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
提示如下错误
xcode-select: error: invalid developer directory '/Library/Developer/CommandLineTools'
Failed during: /usr/bin/sudo /usr/bin/xcode-select --switch /Library/Developer/CommandLineTools
从报错来看,是说 /Library/Developer/CommandLineTools 不是 xcode-select 的有效路径
那么正常来说要做的就有两件事:
1.找到 xcode-select的有效路径
  2.使用有效路径替换 https://raw.githubusercontent.com/Homebrew/install/master/install 文件中的 /Library/Developer/CommandLineTools
使用xcode-select -p 查找有效路径,但是报如下错误
xcode-select: error: unable to get active developer directory, use sudo xcode-select --switch path/to/Xcode.app to set one (or see man xcode-select)
根据在网上搜索信息,这个报错是因为没有安装xcode, 所以我们电脑上其实是没有xcode, 所以导致了xcode-select有效路径出错的问题,而并非有效路径出错。所以下一步就是安装xcode。

3、安装xcode

使用 Terminal 运行如下代码安装,默认安装(Command Line Tools)最新版本
xcode-select --install
安装Xcode

4、再次安装brew

输入如下命令安装brew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
经过挺长时间的安装后,安装成功,

5、再次安装python3

brew install python3
安装完python3后自动安装好了pip3

6、安装python虚拟环境

由于安装虚拟环境需要用到pip3命令,所以安装之前需要安装好pip3
请参考:Mac 安装 虚拟环境 python virtualenv其中第一步的pip命令和第三步配置环境变量可以参考本文。
[sudo] pip3 install virtualenv [sudo]可用可不用
pip3 install virtualenv
pip3 install virtualenvwrapper
查看是否安装成功

6.1、配置环境变量

cd ~
vim .bash_profile

使用演示

mkvirtualenv envname02 # 因为我们的virtualenv工具是使用pip3安装的,所以默认是python3的虚拟环境
test__env01使用的是python3创建的,所以该虚拟环境中会有python3的解析器,但是没有python2的解析器。如下图所示,使用workon test_env01激活该环境中,使用which命令分别查看python2和python3的路径,发现python3在该环境目录下,而python2则是系统绝对路径。
同理使用python2创建一个虚拟环境
mkvirtualenv -p python2.7 envname02
test__env02使用的是python2创建的,所以该虚拟环境中会有python2的解析器,但是没有python3的解析器。如下图所示,使用workon test_env02激活该环境中,使用which命令分别查看python2和python3的路径,发现python3是系统绝对路径,而python2则在该环境目录下。
我们能够根据项目的不同版本需要创建不同的虚拟环境。

7、虚拟环境的常用命令操作

参考Mac 安装 虚拟环境 python virtualenv第4-1/4-2/4-3节部分的内容。

8、关于pyenv和virtualenv

其中虚拟环境也可以使用pyenv 来代替virtualenv,它们的区别如下,但是我个人觉得在平常使用过程中两个相差不大。
pyenv 主要用来管理 Python 的版本,比如一个项目需要 Python 2.x ,一个项目需要 Python 3.x 。 而 virtualenv 主要用来管理 Python 包的依赖,不同项目需要依赖的包版本不同,则需要使用虚拟环境。
 
使用 pyenv 来管理 python 版本,使用 pyenv-virtualenv 插件来管理多版本 python 包。

8.1、pyenv的安装指南

官方:https://github.com/pyenv/pyenv
中文资料:http://einverne.github.io/post/2017/04/pyenv.html

9、venv,另一种创建虚拟环境的方式

通过下面shell 命令也可以很简单的创建一个虚拟环境
python3 -m venv venv# 第一个venv是命令,第二个venv是虚拟环境的名字,这里刚好取名为venv
通过这种方式创建的虚拟环境和virtualenv的使用方式是一样的,激活和退出方式也是一样的。
source bin/activate  # 激活并进入虚拟环境
workon envname02 # 进入该虚拟环境
deactivate  #退出虚拟环境

10、私有源设置

vim ~/.pip/pip.conf
在文件中添加如下内容
[global]
index-url=https://xx.xxx.xxx/xx
输入完成后保存退出,如果保存退出过程中,报了下面这个错误
原因可能是你的~/.pip目录不存在,查看~/.pip目录是否存在, 发现这个目录确实不存在,那么我们需要先创建~/.pip目录,再去vim ~/.pip/pip.conf添加私有源。
posted @ 2021-06-18 15:08  Lucky小黄人^_^  阅读(768)  评论(0编辑  收藏  举报