python学习笔记:python环境配置20180328

20170315开始,学习LINUX与PYTHON。荷兰人Guido van Rossum1989 创立了PYTHON语言,1991年初发行了第一个版本。

1、安装PYENV

PYTHON开发环境PYENV,是一个多࣍版本管理工具,安装之前,确保已经安装git

yum install git -y

安装其他依赖

# yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readlinedevel zlib-devel bzip2-devel
创建用户

# useradd python

使用python登录,然后开始安装,一般一个项目都是以一般用户开发的,非ROOT用户。

从官网下载PYENV

curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash

在python用户的~/.bash_profile追加:


VIM打开~/.bash_profile,WQ保存退出。

export PYENV_ROOT=/home/python/.pyenv
export PATH="/home/python/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

激活PYENV,重新登录PYTHON账户

2、python多版本安装

查看pyenv命令

[python@centos6 ~]$ pyenv
pyenv 1.2.2
Usage: pyenv <command> [<args>]

Some useful pyenv commands are:
   commands    List all available pyenv commands
   local       Set or show the local application-specific Python version
   global      Set or show the global Python version
   shell       Set or show the shell-specific Python version
   install     Install a Python version using python-build
   uninstall   Uninstall a specific Python version
   rehash      Rehash pyenv shims (run this after installing executables)
   version     Show the current Python version and its origin
   versions    List all Python versions available to pyenv
   which       Display the full path to an executable
   whence      List all Python versions that contain the given executable

See `pyenv help <command>' for information on a specific command.


查看 pyenv help install安装帮助

[python@centos6 ~]$ pyenv help install
Usage: pyenv install [-f] [-kvp] <version>
       pyenv install [-f] [-kvp] <definition-file>
       pyenv install -l|--list
       pyenv install --version

  -l/--list          List all available versions
  -f/--force         Install even if the version appears to be installed already
  -s/--skip-existing Skip if the version appears to be installed already

  python-build options:

  -k/--keep          Keep source tree in $PYENV_BUILD_ROOT after installation
                     (defaults to $PYENV_ROOT/sources)
  -p/--patch         Apply a patch from stdin before building
  -v/--verbose       Verbose mode: print compilation status to stdout
  --version          Show version of python-build
  -g/--debug         Build a debug version

安装各个版本PYTHON,联官网下载安装,-v安装过程可以看到,安装过程较慢。

pyenv install 3.5.5 -v

pyenv install 3.6.1 -v

另类安装,提前下好包至/home/python/.pyenv/cache下,选择阿里云等。在当前目录输入下面命令或拷贝下好的包至cache下。

wget http://mirrors.sohu.com/python/3.5.5/Python-3.5.5.tar.xz
wget http://mirrors.sohu.com/python/3.5.5/Python-3.5.5.tgz
wget http://mirrors.sohu.com/python/3.5.5/Python-3.5.5rc1.tar.xz

已下载好的,不下载了。

3、配置PYENV至所做项目

pyen之global、shell、local配置.与登录用户名有关.

现版本为2.6.6

python@centos6 cache]$ python -V

Python 2.6.6

设置全局3.5.5版本,不能乱用.

[python@centos6 cache]$ pyenv global 3.5.5
[python@centos6 cache]$ python -V
Python 3.5.5
[python@centos6 cache]$ pyenv version

3.5.5 (set by /home/python/.pyenv/version)

切换至system

[python@centos6 cache]$ pyenv global system

当前shell会话环境,只限于当前终端窗口,换一个窗口成另外的python环境。

[python@centos6 cache]$ pyenv shell 3.5.5

[python@centos6 cache]$ pyenv version
3.5.5 (set by PYENV_VERSION environment variable)
[python@centos6 cache]$ pyenv versions
  system
* 3.5.5 (set by PYENV_VERSION environment variable)
  3.5.5/envs/sqq355
  3.6.1
  3.6.1/envs/sqq361
  sqq355

  sqq361

local用法,只用于所对应的文件夹(包括下面的子目录,兄弟目录不管),退出目录所对应的环境不一样了,用处多

[python@centos6 pro]$ ls
cmdd
[python@centos6 pro]$ cd ..
[python@centos6 wangqq]$ pyenv version
3.6.1 (set by /home/python/wangqq/.python-version)
[python@centos6 wangqq]$ cd pro
[python@centos6 pro]$ pyenv version
3.5.5 (set by /home/python/wangqq/pro/.python-version)
[python@centos6 pro]$ cd cmdd
[python@centos6 cmdd]$ pyenv versions
  system
  3.5.5
  3.5.5/envs/sqq355
* 3.6.1 (set by /home/python/wangqq/pro/cmdd/.python-version)
  3.6.1/envs/sqq361
  sqq355
  sqq361
[python@centos6 cmdd]$ pyenv local system
[python@centos6 cmdd]$ pyenv versions
* system (set by /home/python/wangqq/pro/cmdd/.python-version)
  3.5.5
  3.5.5/envs/sqq355
  3.6.1
  3.6.1/envs/sqq361
  sqq355

  sqq361

但面临的可能多人用同一个环境(如3.5.5),所安装的包的版本可能不一样,装至公共环境了,还是混乱,解决办法:虚拟环境,包管理独立,相当于自己定制的PYTHON版本。


[python@centos6 cmdd]$ pyenv virtualenv 3.5.5 qq355
Requirement already satisfied: setuptools in /home/python/.pyenv/versions/3.5.5/envs/qq355/lib/python3.5/site-packages
Requirement already satisfied: pip in /home/python/.pyenv/versions/3.5.5/envs/qq355/lib/python3.5/site-packages
[python@centos6 cmdd]$ pyenv versions
* system (set by /home/python/wangqq/pro/cmdd/.python-version)
  3.5.5
  3.5.5/envs/qq355
  3.5.5/envs/sqq355
  3.6.1
  3.6.1/envs/sqq361
  qq355
  sqq355
  sqq361
[python@centos6 cmdd]$ pyenv local qq355
(qq355) [python@centos6 cmdd]$ pyenv versons
pyenv: no such command `versons'
(qq355) [python@centos6 cmdd]$ pyenv versions
  system
  3.5.5
  3.5.5/envs/qq355
  3.5.5/envs/sqq355
  3.6.1
  3.6.1/envs/sqq361
* qq355 (set by /home/python/wangqq/pro/cmdd/.python-version)
  sqq355
  sqq361
(qq355) [python@centos6 cmdd]$

提示符显示qq355,为3.5.5的环境。

4、pip通用配置

注意安装路径,虚拟环境下安装至ENV,公共的安装至python公共环境下。

根目录下:pip/pip.conf文件下编辑好以下内容,去国内镜像下载,速度快点。


安装redis包,安装至当前目录所对应的虚拟环境下或公共环境。

pip install redis

在那个目录安装至那个目录,换目录不能用。

$ pip install ipython

exit退出

安装jupyter

 pip install jupyter

jupyter notebook --ip=0.0.0.0,可以浏览器访问,上不了网一般是防火墙的问题,执行第4点。 在浏览 输入IP/


问题:jupyter访问不了,或者linux上运行的网站访问不了。

解决思路:

1、linux上执行sudo ifconfig,查看本机ip地址是多少,比如是:172.16.100.12 ,然后使用netstat -tnlp 查看端口是否已经在listen状态。

2、在另外一台机器上使用命令 ping 172.16.100.12,如果不通的话说明本机连接到linux主机网络配置有问题,重新设置虚拟机网络配置 。

3、如果能ping通,说明网络正常,使用telent 172.16.100.12 8888 看端口是否连通的,如果不通清空防火墙规则。如果没有telent命令,请查看:https://jingyan.baidu.com/article/ae97a646b22fb6bbfd461d19.html

4、在Linux上执行 sudo iptables -F 命令

5、继续执行: centos6:service iptables stop?|  centos7:systemctl disable firewalld

6、如果仍然无法访问,查看运行的进程是否监听 在0.0.0.0,比如: jupyter notebook --ip=0.0.0.0





编辑test.PY可以编辑,同步至LINEX下.

pip freeze >requirement

冻结当前目录下的包,

pip install -r requirement

把冻结的包安装至所在目录下。









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值