前提
- 安装过 homebrew
- 给相关路径添加访问权限:
sudo chown -R $(whoami) /usr/local/sbin chmod u+w /usr/local/sbin
- 安装Xcode Tool:
xcode-select --install
- 添加相关文件路径:
sudo mkdir /usr/local/Frameworks sudo chown $(whoami):admin /usr/local/Frameworks
安装
命令:
brew install python3
brew link python
安装完成但Mac自带的依然是2.7.x版本, 还需要覆盖一下,依次执行:
alias python="/usr/local/bin/python3.7" - 修改默认指向
创建必要执行文件:
touch .bashrc
vi .bashrc - 添加: alias python="/usr/local/bin/python3.7"
touch .bash_profile
vi .bash_profile - 添加: source ~/.bashrc
执行:
source ~/.bash_profile
至此Python3已安装完成
可以验证一下:
python --version
安装Python 包管理工具
因Mac自带, 需要升级:
sudo pip install --upgrade pip
搭建虚拟环境
例如开启一个新项目ReM, 需要在本地创建项目目录:
mkdir ReMUTA
cd ReMUTA
创建一个独立的Python虚拟运行环境(不带任何包的纯净环境),命名为menv
virtualenv --no-site-packages menv
此时默认创建的还是python2.7版本环境
想要创建python3.x环境, 添加个条件即可:
virtualenv --python=python3.7 --no-site-packages menv
新建的Python环境被放到当前目录下的venv目录。有了venv这个Python环境,可以用source进入该环境:
source menv/bin/activate
注意到命令提示符变了,有个(menv)前缀,表示当前环境是一个名为menv的Python环境。
下面正常安装各种第三方包,并运行python命令:
例如:
pip install jinja2
在menv环境下,用pip安装的包都被安装到这个环境下,系统Python环境不受任何影响。也就是说,menv环境是专门针对ReMuta这个项目(应用)创建的。
退出menv环境:
deactivate
此时回到了正常的系统环境, 虚拟环境搭建的意义在于可以完全针对每个应用/项目创建独立的Python运行环境,这样就可以对每个项目的Python环境进行隔离。
virtualenv 原理就是把系统Python复制一份到virtualenv的环境,用命令source menv/bin/activate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。
pip基本使用:
基本命令及说明:
pip --version 显示版本和路径
pip --help 获取帮助
pip install -U pip 升级pip
sudo easy_install --upgrade pip 上面升级失效的话用此命令升级pip
sudo pip install --upgrade pip 或者用这个命令升级
安装包
pip install SomePackage # 最新版本
pip install SomePackage==1.0.4 # 指定版本
pip install 'SomePackage>=1.0.4' # 最小版本
比如我要安装 Django。用以下的一条命令就可以,方便快捷。
pip install Django==1.7
升级包, 升级指定的包,通过使用==, >=, <=, >, < 来指定一个版本号。
pip install --upgrade SomePackage
其它相关操作:
pip uninstall SomePackage 卸载包
pip search SomePackage 搜索包
pip show 显示安装包信息
pip show -f SomePackage 查看指定包的详细信息
pip list 查看已安装的包
pip list -o 查看可升级的包
注意
安装包时遇到的问题:
从MySQL官网下载mysql
安装MySQL-python==1.2.5
- Python3.x以上使用PyMySQL
django项目inti.py中添加以下代码pip install pymysql
import pymysql pymysql.install_as_MySQLdb()
- Python2.7安装mysql-python需注意以下事项
错误1: _mysql.c:44:10: fatal error: 'my_config.h' file not found 缺少my_config.h文件 或者: EnvironmentError: mysql_config not found 找不到配置文件- 解决: 更改~/.bash_profile配置, 往.bash_profile文件中添加如下配置:
然后输入PATH="/usr/local/mysql/bin:${PATH}" export PATH export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/ export VERSIONER_PYTHON_PREFER_64_BIT=yes export VERSIONER_PYTHON_PREFER_32_BIT=no
source ~/.bash_profile
使配置生效- 安装mysql客户端
brew install mysql-connector-c 客户端 sed -i -e 's/libs="$libs -l"/libs="$libs -lmysqlclient -lssl -lcrypto"/g' /usr/local/bin/mysql_config 修改mysql_config 配置 sudo pip install mysql-python==1.2.5
错误2:如果安装失败, 可尝试手动下载安装
- 解决: 从官网下载包, 解压, 进入包目录
sudo python setup.py clean sudo python setup.py build sudo python setup.py install