最近对Python是异常喜爱,看完了Vamei大神的python快速教程(看到标准库不想看了),做了一些leetCode题目熟悉了一下基本语法,然后准备用Scarpy爬网页,然后用collaborate filler算法做一个电影推荐系统。昨天学了一天Scarpy,今天本来准备继续学,发现一门UCB的一门课CS61A,用python教学,全套教学视频、讲义、作业、lab、期末考试应有尽有。对我这种国外公开课控来说这简直就是鸦片、鸦片啊!但是人家教学用到是python3,我系统的环境是python2,而且主要也会用这个环境。怎么办呢?有人说虚拟机,虚拟机你妹啊,占用内存不说,而且死卡,不方便!百度之,发现有一种方法叫做Virtualenv,教程在这,有需要的自取,下面我着重讲一下我用的第二种方法pythonbrew。
pythonbrew
pythonbrew其实就是一个python沙盒,里面可以装各种python的版本,可以根据需要临时改变环境(在当前终端)
或者永久改变,或者可以把它关掉,就是用系统的环境啦~
安装
执行以下命令
curl -kL http://xrl.us/pythonbrewinstall | bash
再把下面这个添加到~/.bash_profile(没有的话touch一个然后vim改就好咯)
[[ -s $HOME/.pythonbrew/etc/bashrc ]] && source $HOME/.pythonbrew/etc/basic
别人的博客里有用easy_install或者pip的,我试过,安装成功之后没有对应的pythonbrew命令(好像只有pythonbrew_install和另外一个有类似格式两个命令,执行了前者之后也会显示安装成功的信息,但是不知道怎么用)
成功之后会有如下提示信息
1 Well-done! Congratulations! 2 3 The pythonbrew is installed as: 4 5 /Users/dqf/.pythonbrew 6 7 Please add the following line to the end of your ~/.bashrc 8 9 [[ -s "$HOME/.pythonbrew/etc/bashrc" ]] && source "$HOME/.pythonbrew/etc/bashrc" 10 11 After that, exit this shell, start a new one, and install some fresh 12 pythons: 13 14 pythonbrew install 2.7.2 15 pythonbrew install 3.2 16 17 For further instructions, run: 18 19 pythonbrew help 20 21 The default help messages will popup and tell you what to do! 22 23 Enjoy pythonbrew at /Users/dqf/.pythonbrew!!
这个提示信息其实还是有点儿问题的,到最后再说
使用
-
列出可安装的 python 版本:
pythonbrew list --know
-
安装某个版本的 python :
pythonbrew install 2.7.3
-
删除已安装的某版本的 python :
pythonbrew uninstall 2.7.3
-
列出已安装的 python 版本(当前使用的版本后会用星号标记):
pythonbrew list
-
使用某个版本的 python (仅当前终端窗口有效):
pythonbrew use 2.7.3
-
切换到某个版本的 python (一直有效):
pythonbrew switch 2.7.3
-
清理陈旧的源码目录和档案包:
pythonbrew cleanup
-
升级到pythonbrew到最新版本:
pythonbrew update
-
禁用pythonbrew(即切换回原始环境):
pythonbrew off
-
创建python隔离环境(借助virtualenv):
pythonbrew venv init
pythonbrew venv create proj
pythonbrew venv list
pythonbrew venv use proj
pythonbrew venv delete proj
pythonbrew venv rename proj proj2
- 查看 pythonbrew 版本:
pythonbrew version
更多内容请看 pythonbrew 中文文档:Read the Docs
/etc/profile,/etc/bashrc,~/.bash_profile,~/.profile,~/.bashrc
之前没怎么搞明白,现在查了些资料,做了一些实验,终于搞个差不多了
我的系统是OS X 10.9.4,测试的结果是:对于所有的用户,登陆账号(ssh远程登陆或者在本机打开terminal)系统级的“/etc/profile”和“/etc/bashrc”是必然执行的,而且是最早执行的两个,然后执行“~/.bash_profile”,如果在终端输入bash,那么进入bash执行~/.bashrc。
当然mac下的shell有很多啦,比如zsh,它的配置文件就是~/.zshrc(没找到??touch一个呗)
先说这么多,感觉shell还是蛮有意思的,自从换了mac,学习新技术的热情也高涨了不少呢