主要内容:https://www.cnblogs.com/pyyu/p/9015317.html
https://www.cnblogs.com/pyyu/p/9276851.html
1 python3 的安装:
a 下载python3的源码: wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz
b 解压缩源码包, 去除xz的后缀 : xz -d Python-3.6.7.tar.xz
c 解压缩源码包, 去除.tar的后缀: tar -xf Python-3.6.7.tar
d 解压编译安装python3所需的软件依赖, 解决这些依赖关系后才能正确运转python3.6
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y
e 开始进行编译安装
第一步: 调用源码包路径底下的configure这个脚本文件
./configure --prefix=/opt/python36/
第二部: 执行make命令, 开始编译(该步骤不会生成python36文件夹)
编辑的含义: 翻译python解释器是对代码进行一行一行的翻译, 并且装换成机器代码去执行.
编译的含义: 编译型的语言, 在运行代码之前有一个编译的过程, 将代码转换成一个二进制文件
第三部: make install 安装软件
才会生成一个/opt/python36这个软件安装路径
f 快速使用python36的快捷方式
第一种方法: 创建快捷方式, 软连接
ln -s /opt/python36/bin/python3.6 /usr/bin/python3 #但是这一步还没有pip
ln -s /opt/python36/bin/pip3 /usr/bin/pip3
第二种方法: 环境变量的配置
打印echo $PATH : /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
配置python36的目录, 加入环境变量
将python36的目录放在的path的第层:/opt/python36/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:
h 配置环境变量: 永久生效,写入到文件/etc/profile中, 每次登陆都生效
vim /etc/profile #将此配置写到最低行
PATH = /opt/python36/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
读取这个文件, 让python3生效
2 安装ipython解释器
a 安装ipython , 指定豆瓣元下载: pip3 install -i https://pypi.douban.com/simple ipython
b 安装朱皮特 : pip3 install -i http://pypi.douban.com/simple jupyter
c 进入ipython环境, 给jupyter设置密码:
ipython 进入ipython的交互界面
from IPython.lib import passwd
passwd()#生成jupyter登录的密码
d 生成jupyter的配置文件:
jupyter notebook --generate-config --allow-root
e 修改配置文件:
vim ~/.jupyter/jupyter_notebook_config.py
修改如下配置一致即可,去掉注释符 # 才能读取代码
c.NotebookApp.ip = '建议写当前linux机器的ip地址'
c.NotebookApp.open_browser = False
c.NotebookApp.port = 8000
f 启动朱皮特: jupyter notebook --allow-root #启动notebook
g 启动不了出现的问题: 可能是防火墙出现的问题:
关闭防火墙的方法:
systemctl stop firewalld #关闭防火墙服务
systemctl disable firewalld #从开机自启中,移除这个防火墙服务,永久关闭
还有一个selinux需要关闭:
getenforce 查看selinux的规则
临时关闭selinux, setenforce0
注意: 永久关闭selinux 需要重启自启 : vim/etc/selinux/config
在配置文件中写入:SELINUX = disabled
重启服务器生效, selinux永久生效
3 使用虚拟环境器环境, 可以在一台服务器上, 运行多个python解释器的环境.
a : linux下虚拟环境的安装
1) 通过pip3 安装虚拟环境: pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv
2) 通过virtualenv命令, 创建第一个新的虚拟环境:virtualenv --no-site-packages --python=python3 venv1
no-site-packages : 创建一个干净的, 隔离宿主机环境的虚拟环境
python = python3 : 指定你的虚拟环境, 以哪个解释器为base环境
3) 激活虚拟环境, 切换宿主机环境, 进入虚拟环境的环境变量
source /opt/all_env/bin/activate
4) 检查环境变量PATH, 检查是否激活了虚拟环境
5) 检查你当前的python3 和pip3 来自于哪里
which python3
which pip3
6) 使用虚拟环境, 安装django1.11.11
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple django==1.11.11
7) 退出虚拟环境: deactivate
4 保证本地和服务器开发环境一致性的配置:
1) 通过命令导出当前的python解释器的pip3包环境
pip3 freeze > requirements.py #这个requirements.py文件,就存放了正常运转的开发软件依赖包的信息
. 2) 上传至服务器后, 在服务器上创建virtualenv, 在venv中导入项目所需的模块依赖
pip3 install -r requirements.py
5 虚拟环境之virtualenvwrapper
a : virtualenv的一个最大的缺点是:
每次开启虚拟环境之前要在虚拟环境所在目录下的bin目录source一下activate激活.这需要我们记住每个虚拟环境的所在的目录.
b : 原因: 使用virtualenvwrapper管理你的虚拟环境, 其实就是统一管理虚拟环境的目录, 并且省去了source的目录
c : 安装步骤
1) 下载安装virtualenvwrapper:
pip3 install -i https://pypi.douban.com/simple virtualenvwrapper
2) 配置全局变量,让每次登陆linux时候,就加载这个virtualenvwrapper.sh脚本文件,使得virtualenvwrapper这个工具生效.
#打开这个用户环境变量配置文件,写入以下信息,export 就是读取一段shell变量的命令
vim ~/.bashrc #这个文件代表用户环境变量,每次登陆时候加载
export WORKON_HOME=~/Envs #设置virtualenv的统一管理目录
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' #添加virtualenvwrapper的参数,生成干净隔绝的环境
export VIRTUALENVWRAPPER_PYTHON=/opt/python36/bin/python3.6 #指定python解释器,(这个得根据你自己机器环境来配)
source /opt/python36/bin/virtualenvwrapper.sh #执行virtualenvwrapper安装脚本,这个脚本放在你的python3.6解释器bin目录下
读取文件,使得生效,此时已经可以使用virtalenvwrapper
source ~/.bashrc
3) 开始使用virtualenvwrapper, 创建一个venv1
mkvirtualenv venv1 #这一步会创建venv1,并且放入到WORKON_HOME变量定义目录下,并且自动激活虚拟环境.
4) 其他的一些命令:
lsvirtualenv #查看当前机器所有的虚拟环境
workon #用于激活虚拟环境,也用于在多个虚拟环境中来回切换,
rmvirtualenv #用于删除虚拟环境,也会自动找到所有的虚拟环境
cdvirtualenv #用于直接进入虚拟环境的目录,此命令需要激活虚拟环境