centos7 安装python3.6及相应版本的ipython

in #python37 years ago (edited)

环境

默认centos7的python版本是python2.7,并且没有安装ipython

安装python3.6

  • 安装依赖
# yum install xz gcc zlib zlib-devel wget sqlite-devel openssl-devel -y
  • 官网下载源码
# wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz 
  • 解压文件
# tar xf Python-3.6.1.tar.xz
  • 进入目录安装编译
# cd Python-3.6.1 
#  ./configure --prefix=/usr/python3.6 
#  make && make install
  • 让系统默认使用python3
# cd /usr/bin/
# mv python python.bak
# ln -s /usr/python3.6/bin/python3 /usr/bin/python
  • 设置python3相关变量
# tail -1 /etc/profile
PATH=$PATH:/usr/python3.6/bin/
# . /etc/profile
  • yum使用的是python2,替换python3之后可能导致无法正常工作,因此需要yum继续使用python2
# head -1 /usr/bin/yum 
#!/usr/bin/python2
# head -1 /usr/libexec/urlgrabber-ext-down 
#! /usr/bin/python2
  • 进入python3
# python
Python 3.6.1 (default, Dec 23 2017, 18:29:11) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

安装ipython3

  • 下载ipython安装包
# wget https://pypi.python.org/packages/79/63/b671fc2bf0051739e87a7478a207bbeb45cfae3c328d38ccdd063d9e0074/ipython-6.1.0.tar.gz#md5=1e15e1ce3f3f722da6935d7ac0e51346
  • 安装ipython
# tar xf ipython-6.1.0.tar.gz
# cd ipython-6.1.0
# python setup.py install
......
......
changing mode of /usr/python3.6/bin/ipython3 to 755
changing mode of /usr/python3.6/bin/iptest3 to 755
running install_data
copying docs/man/ipython.1 -> /usr/python3.6/share/man/man1
running install_egg_info
Writing /usr/python3.6/lib/python3.6/site-packages/ipython-6.1.0-py3.6.egg-info
  • 进入ipython,报错
# ipython
Traceback (most recent call last):
  File "/usr/python3.6/bin/ipython", line 4, in <module>
    from IPython import start_ipython
  File "/usr/python3.6/lib/python3.6/site-packages/IPython/__init__.py", line 54, in <module>
    from .core.application import Application
  File "/usr/python3.6/lib/python3.6/site-packages/IPython/core/application.py", line 23, in <module>
    from traitlets.config.application import Application, catch_config_error
ModuleNotFoundError: No module named 'traitlets'
  • 根据报错提示安装缺失的相关模块
# pip3 install traitlets 
# pip3 install pygments
# pip3 install pexpect
# pip3 install pickleshare
# pip3 install prompt_toolkit
# pip3 install simplegeneric
  • 再次尝试进入ipython
#ipython
Python 3.6.1 (default, Dec 23 2017, 19:28:41) 
Type 'copyright', 'credits' or 'license' for more information
IPython 6.1.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]:

Coin Marketplace

STEEM 0.16
TRX 0.15
JST 0.028
BTC 59114.57
ETH 2309.50
USDT 1.00
SBD 2.49