brew python3的不服

由于之前使用brew安装的Python3各种不服,找不到pip(可使用python -mpip命令代替解决),pip更新出错,安装Spyder后离奇bug:NameError: name 'runfile' is not defined… 但是macvim又要依赖于Python,不管他,直接brew install macvim然后这个依赖应该忽略不计了。

安装&卸载Anaconda

尝试安装AnacondaAnaconda但是其实是內建的环境,而且目前只release到Spyder2,因此卸载之,干净卸载参考官方文档Simple remove部分

Simple remove

WINDOWS: In the Control Panel, choose “Add or Remove Programs” or “Uninstall a program” and then select “Python 3.5 (Anaconda)” or your version of Python.

OS X: Open the Terminal.app or iTerm2 terminal application and remove your entire Anaconda directory, which will have a name such as “anaconda2” or “anaconda3”, by entering the following command: rm -rf ~/anaconda3

LINUX: Open a terminal window and remove your entire Anaconda directory, which will have a name such as “anaconda2” or “anaconda3”, by entering the following command: rm -rf ~/anaconda3

然后,顺便清理一下环境变量就好了。

好了,鉴于上述的种种问题,虽然凑凑活活都没问题,但是依然不爽。墨迹墨迹终于决定要重新搭建一个干净舒服的Python科学计算环境了。正文部分开始。

Python3安装

Python 2 vs 3之争不多说,反正我觉得以后用3就对了,但是写程序注意一下print()range()、浮点数之类的语法,尽量保证程序版本都兼容比较好。被brew伤了心,这次乖乖的去安装官网的Python3,省时省心,安全可靠,不用心疼自己MAC去编译了。过程很简单,下载安装就好。

安装完可以更改一下pip源,试过阿里云的源不错,速度稳稳上1MB。编辑.pip/pip.conf,我是这样写的:

1
2
3
4
5
6
7
8
9
[global]
timeout = 6000
trusted-host = mirrors.aliyun.com
index-url = http://mirrors.aliyun.com/pypi/simple
[install]
timeout = 6000
use-mirrors = true
trusted-host = mirrors.aliyun.com
index-url = http://mirrors.aliyun.com/pypi/simple

最后记得pip3 install --upgrade pip更新一下pip。

Spyder3安装

Python科学计算的平台用过几个,但是还是Spyder用的比较舒心。版本虽然已经到3了,但是Anaconda还没跟上,还是自己单独安装比较舒服。

安装参考官方安装指南,看到官方放出最新的Release着实有点大了,完全把所有的Python环境打包了,用的不是本地的,有点臃肿,嫌麻烦的自然可以考虑。所以,选择手动安装之。用官方的命令:

1
pip3 install -U spyder

装好好发现不能启动,自己一点一点找问题,最后发现虽然装了QtPy,但是缺少了PyQt5库,安装之。

1
pip3 install PyQt5

再试着运行Spyder就妥妥没问题了。

但是命令行启动总是要占一个窗口,终端后台运行又有点尴尬。所以目光转向了官方打包好的Release,从它开始动手,把其他的东西全去掉,只留图标和包说明文件就好,把Contents/MacOS/Spyder替换成刚安装好的/Library/Frameworks/Python.framework/Versions/3.5/bin/Spyder就OK了,应用从600多MB到197KB,好舒心~ tree Spyder.app之后大概是这个样子:

1
2
3
4
5
6
7
8
9
Spyder.app
└── Contents
├── Info.plist
├── MacOS
│   └── Spyder
├── PkgInfo
└── Resources
└── spyder.icns
3 directories, 4 files

~/.bash_profile添加alias spyder="open -a Spyder"后,用spyder命令启动非常完美,而且还可以点图标启动哦,终于不是Python小火箭图标了。

其他科学计算库

然后安装其他的一些科学计算库:

1
2
3
4
5
pip3 install numpy scipy pandas scikit-learn
pip3 install ipython notebook cython
pip3 install networkx
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-0.11.0-py3-none-any.whl\
sudo pip3 install --upgrade $TF_BINARY_URL

END