Ubuntu安装Python3.8.0a4

如果你想体验一下,请用虚拟机(感受一下就行,别当真)。

新特性(整体来说,有三点特别需要注意一下)

海象运算符
# python3.7
a = '123'
if len(a):
print(1)

  

# python3.8
if (b := len(a)):
print(1)

  

整体这样理解

  1. 优先执行短赋值(借鉴golang)右边的代码
  2. 将右边的代码执行结果赋值给左边变量
  3. 再执行if判断

展示张图片

编译字节码可以单独指定存放位置

说白了可以通过设置环境变量 PYTHONPYCACHEPREFIX来指定这个生成路径,你也可以在代码中使用 sys.pycache_prefix来获取这个生成路径

最直接的作用就是分发Python代码的时候可以只分发编译字节码包,从而一定程度上提高了Python的安全性(可能)

Python3.8之前,finally 中加 continue 语句是不合法的。

Python3.8之后这个限制被移除了。

执行结果如下

ubuntu1804之后python3.7存在,暂不替换(不设置软连接)。

python3.8下载(支持LinuxWindowsMac

wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0a4.tar.xz

  

安装

# 先决条件(这样可以避免两个个报错)
apt-get install zlib* -y
apt-get install libffi-dev -y

  

# unxz Python-3.8.0a4.tar.xz
# tar -zxvf Python-3.8.0a4
# 解压Python-3.8.0a4.tar.xz包时,这里推荐手动提取,这样可以省去两条命令。如果python是在一个文件夹下,请确认非root用户拥有该文件夹的全县(递归)
chown -R [非root]:[非root] Python-3.8.0a4

  

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

  如果是Centos系统,安装报错均可在网上查阅到

zipimport.ZipImportError: can't decompress data; zlib not available
...
make: *** [Makefile:1168:install] 错误 1
#权限问题,需要非root用户拥有解压好的python文件夹权限。

  

apt-get install libffi-dev -y
# 这条命令在解决 ModuleNotFoundError: No module named '_ctypes'无模块问题

  

出现以下,便是安装完成了!

...
Collecting setuptools
Collecting pip
Installing collected packages: setuptools, pip
Successfully installed pip-19.0.3 setuptools-40.8.0

 最后给大家分享一些小福利

 

链接:https://pan.baidu.com/s/1sMxwTn7P2lhvzvWRwBjFrQ

提取码:kt2v

链接容易被举报过期,如果失效了就在这里领取吧

Ubuntu安装Python3.8及新特性的更多相关文章

  1. 相比于python2.6,python3.0的新特性。

    这篇文章主要介绍了相比于python2.6,python3.0的新特性.更详细的介绍请参见python3.0的文档. Common Stumbling Blocks 本段简单的列出容易使人出错的变动. ...

  2. [转]Ubuntu安装Python3.6

    Ubuntu安装Python3.6   Ubuntu默认安装了Python2.7和3.5 输入命令python

  3. python-3.8.0 新特性之赋值表达式

    [python-3.8.0 新特性之赋值表达式] 赋值表达式的语法是这样的“ name := expression ”,形式上看和赋值语句 “ = ” 差不多,就作用上来看也雷同.也就是说 “:=” ...

  4. Vmvare下Ubuntu安装Python3.4

    Ubuntu14.4下默认安装的Python版本是2.7.随着Python3.4的使用,现在大部分Python开发者都喜欢使用Py3.4.那么Ubuntu下应该怎么安装Python3.4呢? (1). ...

  5. Python3中的新特性(3)——代码迁移与2to3

    1.将代码移植到Python2.6 建议任何要将代码移植到Python3的用户首先将代码移植到Python2.6.Python2.6不仅与Python2.5向后兼容,而且支持Python3中的部分新特 ...

  6. ubuntu 安装python3

    1.安装python3 apt-get install python3 2.安装pip3 apt-get install python3-pip 3.为python3添加包 pip3 install ...

  7. Ubuntu安装Python3 和卸载

    Python2中文的解决 在py文件第一行添加 #coding=utf-8 1 规范的应该这么写 #-*- coding:utf-8 -*- 1 安装python 系统默认安装Python2 安装Py ...

  8. ubuntu安装Python3并与Python2自由切换

    一.配置ssh链接安装openssh-server sudo apt-get install openssh-server 二.安装Python3及pip sudo apt-get install p ...

  9. ubuntu安装python3

    系统本身就已经安装了python2.7 和python3.4 现在需要做的就是将默认的版本更换一下下就可以了. 检查python的版本 python -V 老的版本没必要去产出了,因为会有一些程序依赖 ...

随机推荐

  1. Thread wait notify sleep

    wait: 必须暂定当前正在执行的线程,并释放资源锁,让其他线程可以有机会运行 notify/notifyall: 唤醒因锁池中的线程,使之运行 wait与sleep区别 对于sleep()方法,我们 ...

  2. 【动态规划】最佳加法表达式(百练oj4152)

    总时间限制: 1000ms 内存限制: 65536kB 描述 给定n个1到9的数字,要求在数字之间摆放m个加号(加号两边必须有数字),使得所得到的加法表达式的值最小,并输出该值.例如,在1234中摆放 ...

  3. vue-父组件传递参数到子组件

    案例: 父组件 <template> <div id="app"> <h1>vuex</h1> <h3>count:{{ ...

  4. Python用户终端输入

    #用户输入,操作 print("python 用户输入操作") # input(提示字符串),函数阻塞程序,并提醒用户输入字符串 instr = input("pleas ...

  5. [vijos1145]小胖吃巧克力<概率dp>

    题目链接:https://vijos.org/p/1145 貌似还有一个一样的题是poj1322 chocolate,两个题只是描述不一样,意思都是一样的,不贵最近貌似poj炸了,所以也没法去poj ...

  6. A换算时间(只想开学)HDU 6556

    题目链接 思路如下 把时间转化为 24小时制下进行考虑,首先我们要明白(在24小时制下):12 点表示是下午PM ,而 24点表示的是明天的 0点(12小时制下),这两个地方需要特殊考虑 题解如下 # ...

  7. 【Linux】nginx服务配置

    一. 部署LNMP环境 准备工作 Linux系统准备 设置IP 关闭防火墙 yum源配置 安装: 传输软件包 1. tar -zxvf lnmp1.2-full.tar.gz cd lnmp1.2-f ...

  8. 下载安装配置 Scala-2.12.11

    文章更新于:2020-03-24 安装惯例,文件附上链接放在文首. 文件名:scala-2.12.11.tgz 文件大小:19.83 MB 下载链接:https://downloads.lightbe ...

  9. flask from_object和from_pyfile的区别

    flask  from_object和from_pyfile的区别 from_object接受的是一个模块对象,需求导入 from_pyfile接受的是一个文件名的字符串,文件可以不是py文件也可以是 ...

  10. PHP如何配置session存储在redis

    当网站用户量增多的时候,正常的session存取就会出现有点慢的问题,如果提高速度呢. 我们可以使用redis去保存session的会话信息. PHP的会话默认是以文件的形式存在的,可以配置到NoSQ ...