美文网首页
Python 3.8的一些新功能

Python 3.8的一些新功能

作者: 开心人开发世界 | 来源:发表于2019-11-08 09:07 被阅读0次

Python 3.8的一些新功能包括:

1.The walrus operator

[图片上传失败...(image-acb5e0-1573174634022)]

[图片上传失败...(image-d62344-1573174634022)]

在此新版本中,我们有一种新的赋值运算符,称为Walrus运算符(:=)。该运算符的优点是可以在一行中设置和返回变量。例如:

Code:
sample_data = [
{“id”: 1, “name”: “Srijan”},
{“id”: 2, “name”: “Abhishek”},
{“id”: 3, “name”: “Dilip”},
{“id”: 4, “name”: “Vishal”},
{“id”: 4, “name”: None},
]
print(“With Python 3.8 Walrus Operator:”)
for entry in sample_data:
    if name := entry.get(“name”):
        print(f’Found name = {name}’)
print(“Without Walrus operator:”)
for entry in sample_data:
    name = entry.get(“name”)
    if name:
        print(f’Found name = {name}’)
Output:
With Python 3.8 Walrus Operator:
Found name = “Srijan”
Found name = “Abhishek”
Found name = “Dilip”
Found name = “Vishal”
Without Walrus operator:
Found name = “Srijan”
Found name = “Abhishek”
Found name = “Dilip”
Found name = “Vishal”

2.Positional-only参数

在定义方法的参数时可以使用特殊的标记“ /”来指定该函数仅接受标记左侧的位置参数。此处的“ /”标记表示x,y和z的值只能在位置上传递,而不能使用关键字参数。

Code:
def func1(x,y,z=None,/):
    r = x + y
    if z is not None:
        r -= z
        return r
print(func1(2, 5)) #7
print(func1(2, 5, 3)) #4
print(func1(x=2, y=10)) #TypeError
print(func1(2, 10, z=3)) #TypeError

3. f-string支持'='

现在,您可以在f字符串中使用'='运算符来获取并打印值。
这意味着现在我们可以在f字符串中执行算术运算了。

a=5
b=6
print(f'sum={a+b}') #11

4. ****新的语法警告

Python在此新版本中引入了针对缺少逗号的新警告消息以及错误消息。解释器将抛出此有用的警告消息,这将帮助用户快速找到他们的错误。

list1=[[0,1] [2,3]] #this will give a SyntaxWarning of missing comma along with the TypeError.

5. 反转字典

reversed()现在可用于字典。Python从3.7开始在字典中插入键的顺序,但是现在在3.8中您也可以将其反转。

dict1={'a':5,'b':6}
print(dict1)    #{'a': 5, 'b': 6}
print(list(reversed(dict1)))    ['b', 'a']

6.多进程共享内存

使用多进程,可以在所有Python实例之间共享和访问数据。这将大大简化存储,存储,访问和传输数据的速度。

7.用新的协议来创建pickle文件

Python中的Pickle主要用于序列化和反序列化数据,以及可在其他地方使用的代码。在此新版本中,Python默认情况下将使用Protocol 4 ,您也可以将其与Protocol 5一起使用。这将使API充分利用,从而提高性能。
对于从事数据科学领域的人员来说,这是一个令人振奋的消息,因为即使在空间较小或有限的服务器中,它也可以与Django和Flask很好地配合使用。

8. ****改进的CPython

Python还说他们已经改进了Python的C引擎。这将使使用Python进行优化变得容易。数据科学领域的人们曾遇到许多实例,其中Python或Jupyter环境由于大量数据而崩溃。随着其CPython模块的改进,用户可以期望在处理和查询数据方面获得更好的结果。

9. ****性能提升

此版本增加了一些性能,可加快解释器的速度。他们之中有一些是:

  • operator.itemgetter()现在提高了33%。
  • 现在,collections.namedtuple()中的字段查找速度提高了两倍以上。
  • 列表构造函数现在创建的列表平均减少12%。
  • uuid.UUID现在使用插槽来减少其内存占用。
  • 现在,一些简单的内置方法的调用速度提高了20%到50%。

还有更多…
要了解更多信息,请查看https://www.python.org/downloads/release/python-380/


摘要

即将发布的Python版本为该语言增加了一些很棒的新功能,并通过基本的加速修复大大提高了性能。让我们欢迎Python 3.8并充分利用它。

翻译自:https://medium.com/@srijansahay/welcome-to-python-3-8-cc88111ea14a

相关文章

  • Python 3.8的一些新功能

    Python 3.8的一些新功能包括: 1.The walrus operator [图片上传失败...(imag...

  • Python 4.0 预计推出的新功能

    Python 4.0 预计推出的新功能 原文作者:Charles Leifer Python 3.8 发布在即,核...

  • Python 3.8更新内容详解

    本文详细介绍 Python 3.8 中的新功能,以及和与 3.7 相比的一些不同点。 新功能 编译的字节码文件的并...

  • Python 4.0 预计推出的新功能

    Python 3.8 发布在即,核心开发者团队让我总结一下最近讨论的 Python 4.0 预计推出的新功能,代码...

  • Python 3.8 新功能大揭秘

    ​Python 3.8是Python语言的最新版本,它适合用于编写脚本、自动化以及机器学习和Web开发等各种任务。...

  • Python 3.8 新功能大揭秘~

    从功能强大的新赋值语法到底层大变动,Python 3.8 迈向更现代的 Python。 Python 3.8是Py...

  • Python 3.8 新功能大揭秘

    Python 3.8是Python语言的最新版本,它适合用于编写脚本、自动化以及机器学习和Web开发等各种任务。现...

  • Python3.8的海象算子

    摘自机器之心 前几个月发布的 Python 3.8 包含了一项重要的新功能,即海象算子。如果合理运用,该算子能有效...

  • Python 3.8 新功能一览

    Python 3.8是Python语言的最新版本,它适合用于编写脚本、自动化以及机器学习和Web开发等各种任务。现...

  • Ubuntu 修改默认 Python3 版本

    目的:将ubuntu系统默认python3版本改为python3.8 安装 Python3.8 修改默认版本 查看...

网友评论

      本文标题:Python 3.8的一些新功能

      本文链接:https://www.haomeiwen.com/subject/mtqibctx.html