使用pyenv和Vtualenv作环境隔离,使用jupyter方便咱们学习python
全部操做都应在单独的用户中进行,不要使用root用户linux
useradd python
开发版本和所用包版本的隔离git
github地址github
安装过程在CentOS中进行,注意用到EPEL源
安装gitweb
yum install git -y
安装依赖sql
yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel
升级nss,同时保证系统时间正确,否则安装pyenv可能报错shell
yum update nss
安装pyenvvim
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
将下面的三行加入到~/.bash_profilewindows
export PATH="/home/python/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
source ~/.bash_profile
这样当用户启动的时候,会执行用户的.bash_profile中的脚步,就会启动pyenv
安装好的pyenv就在~/.pyenv中浏览器
列出全部可用版本
pyenv instll --list
在线安装指定版本(加-v能够查看详细安装过程)
pyenv install 3.5.3 -v
查看已安装的全部版本(system为当前系统自带版本)
pyenv versions
这样安装较慢,为了提速,使用缓存方式安装
在~/.pyenv目录下,新建cache目录,放入下载好的待安装版本的文件,例如Python-3.6.3.tar.xz
pyenv install 3.6.3 -v
version 显示当前的python版本
versions 显示全部已安装的python版本,和当前版本
$ pyenv global 3.5.3
能够看到全部受pyenv控制的窗口中都是3.5.3的python版本了
这里用global是做用于非root用户python用户上,若是是root用户安装,请不要使用global,不然影响太大。
好比CentOS就是使用Python2.X,root用户下使用global就成了3.X,会带来很差的影响
调整回系统默认版本
$ pyenv global system
影响只做用于当前会话
$ pyenv shell 3.6.2
使用pyenv local设置从当前工做目录开始向下递归都继承这个设置
pyenv local 3.6.2
为何要使用虚拟环境?
由于刚才使用的Python环境都是一个公共的空间,若是多个项目使用不一样的Python版本开发,或者使用不一样的Python版本部署运行,或者使用了一样的版本开发的但不一样项目使用了不一样版本的库,等等这些问题都会带来冲突。最好的解决办法就是每个项目独立运行本身的“独立小环境”中。
咱们新建一个目录,接下来将这个目录切换到Python 3.6.2的环境,与系统自带的2.x环境不冲突
mkdir -p dzm/projects/test/
建立虚拟环境,使用呢Python 3.6.2版本建立出一个独立的虚拟空间
pyenv virtualenv 3.6.2 py362
此时再使用pyenv versions就能够看到版本列表中名为py362的环境
将新建的目录切换为py362环境
cd dzm/projects/test/ pyenv local py362
此时当前目录及其子目录下面的python环境就变成了3.6.2版本
其它
不一样环境的真实目录
/home/python/.pyenv/versions/
每一个环境所安装的包都会在相应的site-packages目录中来
/home/python/.pyenv/versions/3.6.2/lib/python3.6/site-packages
ipython是加强的交互式Python命令行工具
操做仍然在dzm/projects/test/目录中,此时ipython也是安装到这个环境中的,与外面的环境相互隔离
pip install ipython ipython
pip是Python的包管理工具,3.x版本直接带了,能够直接使用
和yum同样为了使用国内镜像,作以下配置
$ mkdir ~/.pip vim ~/.pip/pip.conf
[global] index-url=https://mirrors.aliyun.com/pypi/simple/ truste
pip的配置文件在家目录新建pip文件夹,在里面新建文本文件pip.ini,等同于linux环境的pip.conf
查看当前环境都安装了哪些包
pip list
将当前环境的包的列表导出到一个文件
pip freeze > requirement
根据上面导出的列表安装包
pip install -r requirement
(把虚拟环境包目录里面的文件直接拷贝到新环境包目录里也能够)
是基于web的交互式笔记本,其中能够很是方便的使用python
安装Jupyter,也会安装ipython的
pip install jupyter
查看帮助
jupyter notebook --help
设置密码(否则用网页端浏览时就要输入启动时的随机密码)
jupyter notebook password
启动(若是不自定0.0.0.0,那么启动后默认绑定127.0.0.1,外部是没法浏览的,默认8888端口)
jupyter notebook --ip=0.0.0.0
查看启动端口(默认8888)
ss -tanl
查看本机IP地址在windows系统中经过浏览器浏览ip:8888,输入密码后便可使用jupyter