Linux

  • 参考文献1 :https://www.jianshu.com/p/15f40edefb13;
  • 参考文献2:https://pythonav.com/wiki/detail/3/31/

1、创建文件夹

  • mkdir filename

    mkdir data

2、安装Python

2.1 查看当前Python版本

  • 默认版本是2.7

2.2 安装依赖

如果要正确安装python3,且使用python3的功能,需提前解决如下的环境依赖的问题

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

2.3 下载解压安装包

  • # 下载
    wget https://www.python.org/ftp/python/3.8.7/Python-3.8.7.tgz
  • 解压

tar -zxvf Python-3.8.7.tgz


![image-20211108094105237](https://gitee.com/ziqingbaojian/typora-imgs/raw/master/image-20211108094105237.png) #### 2.4 编译安装 - 编译,指定安装目录 ```shell
cd Python-3.8.7
# 配置安装位置
./configure prefix=/usr/local/python3
# 安装
make && make install
  • /usr/local 文件下产生了Python3

2.5 设置软连接

  • 添加Python3的软连接
  • ln -s /usr/local/python3/bin/python3.8 /usr/bin/python3
  • 设置pip的软连接

    ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip3

2.6 测试运行

  • 补充

    这里我没有链接到python上,是因为yum要用到python2才能执行,所以现在输入python的话还是会进入python2.7,输入python3才会进入python3.8

    如果执意想要链接到python的话,就得修改一下yum的配置:

    vi /usr/bin/yum
    把 #! /usr/bin/python 修改为 #! /usr/bin/python2 vi /usr/libexec/urlgrabber-ext-down
    把 #! /usr/bin/python 修改为 #! /usr/bin/python2
  • 注:非必要,不建议将软连接设置为Python,建议设置为Python3

3 、虚拟环境

3.1 virtualenv讲解

  • 在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题;

    亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难。

    此时,我们需要对于不同的工程使用不同的虚拟环境来保持开发环境以及宿主环境的清洁。

    这里,就要隆重介绍virtualenv,一个可以帮助我们管理不同 Python 环境的绝好工具。

    virtualenv 可以在系统中建立多个不同并且相互不干扰的虚拟环境.

  • 安装配置
    • pip3 install virtualenv

    • 升级pip配置

      pip3 install --upgrade pip

    • 创建virtualenv的软连接

      ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv
    • 使用
      # 进入目录
      cd envs 3.创建独立运行环境-命名
      virtualenv venv -p /usr/bin/python3
      # 进入虚拟环境

    • 激活与退出

      # 激活
      source /data/envs/Myproject/venv/bin/activate
      # 退出
      deactive

    • 补充

      virtualenv是如何创建“独立”的Python运行环境的呢?原理很简单,就是把系统Python复制一份到virtualenv的环境,用命令source venv/bin/activate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。

4、确保开发环境的一致性

  • 1.假设我们在本地开发环境,准备好了项目+依赖包环境
    2.现在需要将项目上传至服务器,上线发布
    3.那么就要保证服务器的python环境一致性
  • 解决方案:
    1.通过命令保证环境的一致性,导出当前python环境的包
    pip3 freeze > requirements.txt
    这将会创建一个 requirements.txt 文件,其中包含了当前环境中所有包及 各自的版本的简单列表。
    可以使用 “pip list”在不产生requirements文件的情况下, 查看已安装包的列表。
    2.上传至服务器后,在服务器下创建virtualenv,在venv中导入项目所需的模块依赖
    pip3 install -r requirements.txt

5、virtualenvwrapper使用

  • 本人使用virtualenvwrapper较少,主要使用virtualenv

  • virtualenv 的一个最大的缺点就是:

    每次开启虚拟环境之前要去虚拟环境所在目录下的 bin 目录下 source 一下 activate,这就需要我们记住每个虚拟环境所在的目录。

    并且还有可能你忘记了虚拟环境放在哪。。。

  • 解决方法
    • 一种可行的解决方案是,将所有的虚拟环境目录全都集中起来,例如/opt/all_venv/,并且针对不同的目录做不同的事。
    • 使用virtualenvwrapper管理你的虚拟环境(virtualenv),其实他就是统一管理虚拟环境的目录,并且省去了source的步骤。
  • 安装virtualenvwrapper

    #安装
    pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenvwrapper
    #设置环境变量,每次开机加载virtualevnwrapper export WORKON_HOME=~/Envs #设置virtualenv的统一管理目录 export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'
    #添加virtualenvwrapper的参数,生成干净隔绝的环境 export VIRTUALENVWRAPPER_PYTHON=/opt/python3/bin/python3 #指定python解释器 source /opt/python34/bin/virtualenvwrapper.sh #执行virtualenvwrapper安装脚本 读取文件,使得生效,此时已经可以使用virtalenvwrapper

    管理虚拟环境的命令

    virtualenvwrapper 提供环境名字的tab补全功能。

    当有很多环境, 并且很难记住它们的名字时,这就显得很有用。

    创建一个虚拟环境:
    
    mkvirtualenv my_django115
    这会在 ~/Envs 中创建 my_django115 文件夹。 激活虚拟环境my_django115
    workon my_django115 也可以手动停止虚拟环境
    deactivate 删除虚拟环境,需要先退出虚拟环境
    rmvirtualenv my_django115 lsvirtualenv
    列举所有的环境。 cdvirtualenv
    导航到当前激活的虚拟环境的目录中,比如说这样您就能够浏览它的 site-packages 。 cdsitepackages
    和上面的类似,但是是直接进入到 site-packages 目录中。 lssitepackages
    显示 site-packages 目录中的内容。

Linux安装Python3.8.7的更多相关文章

  1. Linux安装python3.6

    Linux安装python3.6  原地址:https://www.cnblogs.com/kimyeee/p/7250560.html Linux下安装Python3.6和第三方库   如果本机安装 ...

  2. 在Linux 安装Python3.5.6详细文档!!!!

    在Linux 安装Python3.5.6详细文档!!!! 1.安装相关依赖库(工具包) yum install gcc patch libffi-devel python-devel  zlib-de ...

  3. Linux 安装python3.7.3 提示已经自动安装了pip和setuptools 可是使用时bash提示没有找到pip

    Linux 安装python3.7.3 提示已经自动安装了pip和setuptools 可是使用时bash提示没有找到pip 今天的任务就是找到解决办法 另外就是用布置好python3的路径

  4. 常见问题:Linux安装Python3步骤、Windows无法利用pip

    Linux安装python3.6和第三方库的步骤: 我的Linux是CentOS 6.5版本 Linux下大部分系统默认自带python2.x的版本,最常见的是python2.6或python2.7, ...

  5. python相关软件安装流程图解——linux 安装python3——Python-3.7.1

    请先确保已经安装了虚拟机 python相关软件安装流程图解——虚拟机安装——CentOS-7-x86_64-DVD-1810——CentOS-01下载 https://www.cnblogs.com/ ...

  6. Linux安装python3.5

    如果你使用的是Linux发行版,例如Ubantu,那么你的系统中可能已经安装好python了.可以使用python -v来测试一下: ortonwu@ubuntu:~$ python -V Pytho ...

  7. CentOS Linux安装python3

    本文的方法是在CentOS上新装了python3,如果本机安装了python2则保留,因为可能有程序依赖目前的python2环境,比如yum!!!!! 一.安装python3.7 1. 安装依赖环境 ...

  8. linux安装python3+selenium

    安装笔记 当前安装使用centos7 安装python3 1.下载 [admin@ ~] wget https://www.python.org/ftp/python/3.6.0/Python-3.6 ...

  9. linux 安装python3 date更新

    http://linux.51yip.com/ ntpdate -u ntp.aliyun.com   更新时间 centos 默认是有 python的,是2.7.5的 重启网络的命令  -- sys ...

  10. linux安装python3 ,安装IPython ,安装jupyter notebook

    安装python3    下载到 /opt/中 1.下载python3源码,选择3.6.7因为ipython依赖于>3.6的python环境wget https://www.python.org ...

随机推荐

  1. dotnet 替换 ASP.NET Core 的底层通讯为命名管道的 IPC 库

    这是一个用于本机多进程进行 IPC 通讯的库,此库的顶层 API 是采用 ASP.NET Core 的 MVC 框架,其底层通讯不是传统的走网络的方式,而是通过 dotnetCampus.Ipc 开源 ...

  2. hr虚线

    转载请注明来源:https://www.cnblogs.com/hookjc/ <hr size="1" noshade="noshade" style= ...

  3. Nodejs path对象

    很快Node就会迎来4.0的时代,届时将并入现有的iojs,所以先前写过的iojs入门系列直接更名为NodeJS入门. 本篇开始将逐个介绍Node的各主要模块,依循API文档走一遍,但会给出比API文 ...

  4. Mac 配置Apache Php编译ssl错误解决

    终端 Php编译错误解决 //错误信息 unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Unknown error) i ...

  5. 使用Reachability监测网络变化-陈鹏

    在appdelegate里面添加观察者,并启动监测 // 使用通知中心监听kReachabilityChangedNotification通知 [[NSNotificationCenter defau ...

  6. 按照递推的思想求解next[]数组

    按照递推的思想求解next[]数组 根据定义next[0]=-1,假设next[j]=k, 即P[0...k-1]==P[j-k,j-1] 若P[j]P[k],则有P[0..k]P[j-k,j],很显 ...

  7. 帆软报表(finereport)图表钻取详细类别 当前页对话框展示

    添加参数栏,季度下拉框的控件命名为 jd 这里添加雷达图做案例 编辑→特效→ 添加JavaScript 参数:wd    值:分类名      #取雷达图所点击的点 参数:jd      值:公式$j ...

  8. C#项目版本号自定义位置自动向上增加小工具设计与实现

    自从毕了业,好久没更新了,今天突发奇想,过来更新一下,嘻嘻! 一般在做版本升级时,要锁定版本号进行对比,然后联网检索可用的升级包信息,在用VS做C#项目组件版本管理时,是一个很麻烦的事,每次Relea ...

  9. Solution -「洛谷 P4194」矩阵

    \(\mathcal{Description}\)   Link.   给定一个 \(n\times m\) 的矩阵 \(A\),构造一个 \(n\times m\) 的矩阵 \(B\),s.t. \ ...

  10. Dapp开发petshop——truffle官方例程

    truffle-pet-shop pet-shop是truffle的官方例程. 之前参考https://learnblockchain.cn/2018/01/12/first-dapp/的中文教程,但 ...