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命令

[[email protected] ~]$ 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安装帮助

[[email protected] ~]$ 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

[email protected] cache]$ python -V

Python 2.6.6

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

[[email protected] cache]$ pyenv global 3.5.5
[[email protected] cache]$ python -V
Python 3.5.5
[[email protected] cache]$ pyenv version

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

切换至system

[[email protected] cache]$ pyenv global system

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

[[email protected] cache]$ pyenv shell 3.5.5

[[email protected] cache]$ pyenv version
3.5.5 (set by PYENV_VERSION environment variable)
[[email protected] 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用法,只用于所对应的文件夹(包括下面的子目录,兄弟目录不管),退出目录所对应的环境不一样了,用处多

[[email protected] pro]$ ls
cmdd
[[email protected] pro]$ cd ..
[[email protected] wangqq]$ pyenv version
3.6.1 (set by /home/python/wangqq/.python-version)
[[email protected] wangqq]$ cd pro
[[email protected] pro]$ pyenv version
3.5.5 (set by /home/python/wangqq/pro/.python-version)
[[email protected] pro]$ cd cmdd
[[email protected] 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
[[email protected] cmdd]$ pyenv local system
[[email protected] 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版本。


[[email protected] 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
[[email protected] 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
[[email protected] cmdd]$ pyenv local qq355
(qq355) [[email protected] cmdd]$ pyenv versons
pyenv: no such command `versons'
(qq355) [[email protected] 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) [[email protected] cmdd]$

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

4、pip通用配置

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

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

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

安装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



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

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

pip freeze >requirement

冻结当前目录下的包,

pip install -r requirement

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









相关文章:

  • 2021-11-21
  • 2021-10-15
  • 2021-12-04
  • 2021-06-18
  • 2022-12-23
  • 2021-07-19
  • 2021-07-04
  • 2021-08-30
猜你喜欢
  • 2021-09-23
  • 2021-09-30
  • 2022-01-19
  • 2022-02-10
  • 2021-10-06
  • 2021-10-11
相关资源
相似解决方案