Ubuntu部署python3.5的开发和运行环境

时间:2022-06-28 21:10:03

Ubuntu部署python3.7的开发和运行环境

1 概述

由于最近项目全部由python2.x转向 python3.x(使用 python3.7.1) ,之前的云主机的的默认python版本都面临升级,故进行了升级后将相应的步骤记录下来,作为学习笔记吧。

服务器运行环境:

  • ubuntu 18 LTS Server(同样也适合14,16,还有MacOS)

本安装方式具有如下特点:

  • 不影响已经有的python环境
  • 增量式安装
  • 完全隔离的沙盒环境
  • 甚至可以不需要root权限

2 下载

python官网下载指定平台下的python3.7.1的环境

wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz

例如,下载下载的文件为Python-3.7.1.tgz

3 解压

然后进行解压:

tar -xvzf Python-3.7.1.tgz

生成目录Python-3.7.1

4 安装

进入目录Python-3.7.1,进行配置:

./configure --with-ssl --prefix=/usr/local/python3

编译和安装:

make
make install

5 建立虚拟环境

使用python开发环境的时候,一般建立在虚拟环境,这样可以形成项目运行环境的隔离,防止不同依赖的项目的干扰。

进入到当前用户Home目录后,直接运行:

python3 -m venv py3venv  --without-pip

注意:pyvenv脚本在3.7.1之后的版本中逐渐废弃,鼓励使用python3 -m venv,这样可以避免搞错pyvenv所关联的版本。

如果提示没有找到 venv 命令,则安装:
sudo apt install python3-venv 记得带上 --without-pip ,否则可能报错:
Failing command: ['/root/.pyvenv/py3venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']

经过上述操作,即可生成一份克隆有python3.7.1的虚拟环境,然后运行:

source ./py3venv/bin/activate

即可使当前终端环境变成python3.7.1的环境,看到终端前辍带有py3venv表明已经成功:

(py3venv) webapp@iZ25torzzzzZ:~/py3venv/bin$

然后输入命令python,就可以看到进入到python3.7.1的运行界面:

(py3venv) webapp@iZ25torzzzzZ:~$ python
Python 3.7.1 (default, Jun , ::)
[GCC 4.8.] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

6 安装pip

建立虚拟环境后,下一步就是为虚拟环境安装第三方库管理工具pip

py3venv虚拟环境下面执行:

curl https://bootstrap.pypa.io/get-pip.py|python

然后就可以在此环境下使用pip来进行管理python的第三方库了。

但是由于官方库经常国内不能正常访问, 可以修改其为国内镜像。

linux下,修改 ~/.pip/pip.conf (没有就创建一个), 修改 index-url,内容如下:

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

  

7 常见问题-HTTPS错误提示

有时候需要升级pip时,执行:

pip install --upgrade pip

出现HTTPS的错误提示:

pip raises ImportError: cannot import name HTTPSHandler

则需要安装 libssl-dev :

sudo apt-get install libssl-dev

然后再重新编译和安装python3.7.1:

make
make install

7 后记补充

Ubuntu18之后,建议用apt方式直接安装。

MacOS则直接建议brew+pyenv的方式安装。

全自动化的,省事。


作者: Harmo哈莫
作者介绍: https://zhengwh.github.io
技术博客: http://www.cnblogs.com/beer
Email: dreamzsm@gmail.com
QQ: 1295351490
时间: 2016-02
版权声明: 欢迎以学习交流为目的读者随意转载,但是请 【注明出处】
支持本文: 如果文章对您有启发,可以点击博客右下角的按钮进行 【推荐】
 

Ubuntu部署python3.5的开发和运行环境的更多相关文章

  1. Ubuntu部署python3.7的开发和运行环境

    Ubuntu部署python3.7的开发和运行环境 1 概述 由于最近项目全部由python2.x转向 python3.x(使用 python3.7.1) ,之前的云主机的的默认python版本都面临 ...

  2. deepin系统下部署Python3.5的开发及运行环境

    deepin系统下部署Python3.5的开发及运行环境 1 概述 由于最近要学习python接口自动化测试,所以记录一下相关学习经过及经验,希望对大家可以有所帮助. 2 下载 在python官网下载 ...

  3. Java开发和运行环境的搭建

    Java开发需要准备的东西? JDK+Eclipse 其中JDK的意思是Java开发工具包,Eclipse是进行用于做Java程序开发的工具(当然你也可以用记事本什么的去做). 其他开发工具:JCre ...

  4. Web开发中运行环境的配置:(Tomcat7.0.59)和开发环境的配置

    第一部分:运行环境的配置 1.下载压缩包,解压即可 2.配置系统变量JAVA_HOME为jdk的安装路径 3.如有需要修改端口号,比如8080已被占用的时候,可以将其改为9080等 apache-to ...

  5. go开发和运行环境的配置

    1.运行环境的下载.安装.配置: 下载:http://www.golangtc.com/download  官网下载经常被墙屏蔽,所以就从golang中国下载; 安装及其配置:http://jingy ...

  6. DotNet Core 1.0 集成 CentOS 开发与运行环境部署

    一.     DotNet Core 1.0 开发环境部署 操作系统安装 我们使用CentOS 7.2.1511版本. 安装libunwind库 执行:sudo yum install libunwi ...

  7. ubuntu部署Java、Python开发环境

    要部署Java开发环境首先就要安装JDK. 一.安装JDK8 1. 下载 jdk-8u172-linux-x64.tar.gz 到 /usr/java8/ 目录下: 2. tar  -zxvf  jd ...

  8. ubuntu - 14.04,安装JDK1.8(JAVA程序需要的开发、运行环境)

    一,如何删除低版本的open JDK? 在ubuntn的软件中心中,如果输入"java",我们会看到open JDK,但是最高版本是1.7,也有1.6版本的,如果我们安装上去,可能 ...

  9. ubuntu上java的运行环境jre的安装

    如何在Ubuntu 14.04上面安装 java的运行环境 jre 呢,下面直接采用到 oracle 的java 官网下载  对应的 jre 的tar.gz的包 从 root用户切换到 saynoer ...

随机推荐

  1. Linux Shell系列教程之(十四) Shell Select教程

    本文是Linux Shell系列教程的第(十四)篇,更多Linux Shell教程请看:Linux Shell系列教程 在上一篇文章:Linux Shell系列教程之(十三)Shell分支语句case ...

  2. 由后序遍历结果构造二叉查找树 && 二叉查找树链表化

    二叉查找树通俗说就是左孩子比父亲小,右孩子比父亲大.构造这么一个树,树嘛,递归即可. 例如一棵树后序遍历是这样(下图的树):2 9 8 16 15 10 25 38 45 42 30 20.最后的20 ...

  3. Spark之路 --- Windows Scala 开发环境安装配置

    JDK安装 JDK安装包下载 到Oracle官网下载JDK. 传送门 下载之前要记得勾选上同意协议然后选择相应的版本(Windows/Linux, 32/64) JDK安装及验证 按提示完成安装,安装 ...

  4. OpenGl学习总结

    http://wenku.baidu.com/view/5305fe4f866fb84ae45c8dcd.html

  5. [SDOI2009]E&D

    题目描述 小E 与小W 进行一项名为“E&D”游戏. 游戏的规则如下: 桌子上有2n 堆石子,编号为1..2n.其中,为了方便起见,我们将第2k-1 堆与第2k 堆 (1 ≤ k ≤ n)视为 ...

  6. pandas和re中正则表达式的意思

    这里()有两种意思,第一个就是表示匹配范围,另外一个就是输出这个匹配 下面那条语句就是告诉程序,是输出整个句子,“?:”非获取匹配,匹配冒号后的内容但不获取匹配结果,不进行存储供以后使用.

  7. 20155225 2016-2017-2 《Java程序设计》第2周学习总结

    20155225 2016-2017-2 <Java程序设计>第2周学习总结 教材学习内容总结 比较java和C语言的不同点: java除了基本类型还有类类型 基本类型中还有字节和布尔 对 ...

  8. 算法之杨辉三角形&lpar;Java语言&rpar;

    杨辉三角形, 又称贾宪三角形.帕斯卡三角形. 前9层写出来如下: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 ...

  9. 在AI人工智能中如何巧妙学习大数据编程,成为五十万年薪的佼佼者

    编辑 ai狗年 大数据和人工智能的关系,首先要说什么是大数据.这些年来,大数据先是被神化,继而又被妖魔化,到了今天,其实谁也不知道别人所谓的大数据指的是什么.我大数据从业者,建了一个大数据资源共享群1 ...

  10. c语言数据结构&lpar;一&rpar;

    第一章   绪论 一.数据与数据结构 数据:所有能被输入到计算机中,且被计算机处理的符号的集合计算机操作的对象的总称.是计算机处理的信息的某种特定的符号表示形式. 数据元素:数据中的一个“个体”,数据 ...