linux 安装python及其虚拟环境

1.安装python3.6

# 先安装依赖
[root@mysql ~]# yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
[root@mysql ~]# yum install gcc -y
# 先创建配置目录:
[root@mysql ~]# mkdir -p /usr/local/python3
[root@mysql ~]# cd /usr/local/
# 下载3.6.9版本, 其它版本的下载网址请参考官网
[root@mysql local]# wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz
# 下载完成后需要解压
[root@mysql local]# tar -zxvf Python-3.6.9.tgz
# 解压完成后,进行入解压后的目录
[root@mysql local]# cd Python-3.6.9
# 开始安装, 将配置文件安装到`/usr/local/python3`目录下, 
[root@mysql Python-3.6.9]# ./configure --prefix=/usr/local/python3
# make 一下
[root@mysql Python-3.6.9]# make
# 安装
[root@mysql Python-3.6.9]# make install
# 做个软链接, 就是windows中快捷方式
[root@mysql Python-3.6.9]# ln -s /usr/local/python3/bin/python3 /usr/bin/python3
# 添加系统环境变量
[root@mysql Python-3.6.9]# vim ~/.bash_profile
# 主要操作是: export PATH=$PATH:$HOME/bin:/usr/local/python3/bin/
# 修改后文件将在下文贴出
# 测试是否安装完成
[root@mysql Python-3.6.9]# python3 -V
Python 3.6.9 # 若出现正确的版本,则表示以上流程安装没有问题, 至此安装完成


#此时还没有pip工具, 需要下载setuptools
[root@mysql setuptools-41.6.0]# cd /usr/local 
[root@mysql local]# /usr/bin/wget https://files.pythonhosted.org/packages/11/0a/7f13ef5cd932a107cd4c0f3ebc9d831d9b78e1a0e8c98a098ca17b1d7d97/setuptools-41.6.0.zip
[root@mysql setuptools-41.6.0]# unzip setuptools-41.6.0.zip
[root@mysql setuptools-41.6.0]# cd setuptools-41.6.0
# 使用python3 编译
[root@mysql setuptools-41.6.0]# python3 setup.py build
# 使用python3 安装
[root@mysql setuptools-41.6.0]# python3 setup.py install
# 创建软链
[root@mysql setuptools-41.6.0]# ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
[root@mysql setuptools-41.6.0]# pip3 -V
pip 18.1 from /usr/local/python3/lib/python3.6/site-packages/pip (python 3.6)
# 此时需要升级一下
[root@mysql setuptools-41.6.0]# pip3 install --upgrade pip
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting pip
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/00/b6/9cfa56b4081ad13874b0c6f96af8ce16cfbc1cb06bedf8e9164ce5551ec1/pip-19.3.1-py2.py3-none-any.whl (1.4MB)
    100% |████████████████████████████████| 1.4MB 26.4MB/s 
Installing collected packages: pip
  Found existing installation: pip 18.1
    Uninstalling pip-18.1:
      Successfully uninstalled pip-18.1
Successfully installed pip-19.3.1

1.1 国内源永久添加至配置文件中

[root@mysql ~]# pwd
/root
[root@mysql ~]# mkdir .pip
[root@mysql ~]# cd .pip/
[root@mysql .pip]# ll
total 0
[root@mysql .pip]# vim pip.conf
[root@mysql .pip]# ll
total 4
-rw-r--r-- 1 root root 79 Nov 13 12:27 pip.conf
[root@mysql .pip]# cat pip.conf 

[global]
timeout = 6000
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

[root@mysql .pip]# 

1.1 .bash_profile文件内容

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
	. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH==$PATH:$HOME/bin:/usr/local/python3/bin

2. 安装虚拟环境及其依赖包

  • 使用自带的pyvenv来创建虚拟环境
# 创建虚拟环境的存放目录
[root@mysql ~]# cd /usr/local/
[root@mysql local]# mkdir pyenvs
[root@mysql local]# cd pyenvs
[root@mysql pyenvs]# pwd
/usr/local/pyenvs

# 创建虚拟环境
[root@mysql  pyenvs]# /usr/local/python3/bin/python3 -m venv cibpy36
# 解析:`/usr/local/python3/bin/python3` 为原环境, 使用软链也OK
# `cibpy36`为虚拟环境的名字

[root@mysql pyenvs]# ll
total 4
drwxr-xr-x 5 root root 4096 Nov 13 14:14 cibpy36

# 测试创建的虚拟环境, 这就是新的虚拟环境地址
[root@mysql pyenvs]# /usr/local/pyenvs/cibpy36/bin/python
Python 3.6.9 (default, Nov 13 2019, 11:37:40) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

# 创建虚拟环境软链
[root@mysql pyenvs]# ln -s /usr/local/pyenvs/cibpy36/bin/python /usr/bin/cibpy36

# 测试软链
[root@mysql pyenvs]# cibpy36
Python 3.6.9 (default, Nov 13 2019, 11:37:40) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

# 激活虚拟环境
[root@mysql pyenvs]# source cibpy36/bin/activate

# 下面出现`(cibpy36)`就表示已经激活了, 但是没有pip,无法安装模块
(cibpy36) [root@mysql pyenvs]# pip list
Traceback (most recent call last):
  File "/usr/bin/pip", line 7, in <module>
    from pip._internal.main import main
ModuleNotFoundError: No module named 'pip'

# 激活命令有点长,做个软链
(cibpy36) [root@mysql pyenvs]# ln -s /usr/local/pyenvs/cibpy36/bin/activate /usr/bin/activate_cibpy36

# 退出虚拟环境
(cibpy36) [root@mysql pyenvs]# deactivate
[root@mysql pyenvs]# cd ~

# 这个激活命令都短多了
[root@mysql ~]# source activate_cibpy36
(cibpy36) [root@mysql ~]# 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值