2020年令人期待的Python新功能

maoyongfan 2020-05-15

即将开播:5月20日,基于kubernetes打造企业级私有云实践

Python是程序员需要多少自由度的实验。 太多的自由,没有人可以阅读别人的密码; 太少,表现力受到威胁。

-蒂姆·彼得斯(Tim Peters)。

多年来,Python在最近的几个版本中添加了许多强大的功能。 作为软件开发公司,您不应错过这些功能所提供的功能。

随着时间的推移未能增加新功能的任何编程语言都已不再是具有前途的技术,因此可以成为过去的技术。

2020年令人期待的Python新功能

尽管增加了许多重要的新功能,Python 3仍在继续前进,尽管与开发工作的精髓保持同步并不难。

这是最新版本的Python 3中的六个新功能,您可以在即将进行的项目中使用它们:

FString:

Python的Zen指出应该有一种明显的做事方法。 Python中的字符串格式与该规则有很大的出入,因为有很多方法可以做到这一点。

但是Python 3.6中推出的F-String格式既最快又最方便。

但是,许多学习字符串格式的Python程序员都没有利用它们。

要使用f字符串,只需将要包括在此字符串中的变量放在花括号中,并用f前缀修饰字符串。

2020年令人期待的Python新功能

大多数有效的Python表达式都可以放在大括号中。 您可以使用Python的内部表达式格式语言在其中装饰表达式。 您甚至可以对多行f字符串使用三引号。

这些优点使f字符串成为字符串格式的便捷首选,因为它们可以优雅地覆盖大多数用例。 当您需要通过传递任意格式参数时,大约只有一次您不想使用f字符串。 格式化命令。

F字符串的渲染速度比format命令或%字符串渲染运算符快。 在大多数情况下,F字符串的速度几乎是格式的两倍,比%快一点,并且比Template格式化对象快一个数量级。

Python 3.8为f字符串增加了一个新的优点:内部调试。 在f字符串表达式的末尾添加一个等号,渲染该字符串时,您将看到其他数据:

2020年令人期待的Python新功能

异步

异步编程(或简称为异步)使您可以将需要等待外部事件(例如网络请求或磁盘I / O)的多个任务排队,并在它们之间进行不同的切换。

异步是一种与多线程效率相同的工作方式,但操作开销却少得多。 异步操作将占用更少的内存,并且切换速度远快于线程。

Python在最新的版本3.4中引入了asyncio库,在即兴的版本3.5中引入了async / await关键字,此后,该语言一直在稳定地添加和改进异步的工作方式。

如果您当前不在代码中使用异步,则值得探索。 毕竟,如果任何程序花时间等待磁盘或网络操作,它将受益于异步代码。 一个警告:异步一开始可能会比较棘手,因为它需要对代码进行不同的思考。

要使您的Python代码异步兼容,您必须咨询python网络应用开发公司,这些公司可以帮助您简化代码库要求。

我认为,您可以选择的最佳选择是

  • ValueCoders
  • WeblinkIndia.net
  • PBO(外包利润)

数据类

Python 3.7引入了数据类,该数据类提供了一种编写存储许多数据元素的类的方法,而无需使用大量的样板构造函数或初始化程序代码。

例如:

2020年令人期待的Python新功能

此代码自动生成_init_函数,以将名称,学生ID和gpa分配给类实例中的相应变量。

它还为该类生成比较运算符。 结果类与另一个类一样,唯一的区别是其定义方式。

如果您创建的类主要是许多命名数据元素的容器,并附加了一些方法,则数据类可以省去为每个类编写细节的初始化细节的麻烦。

赋值表达式("海象运算符"):

这是一个常见的构造函数

2020年令人期待的Python新功能

赋值表达式语法(也称为"海象运算符")使您可以将局部作用域中的变量赋值压缩为一行。

2020年令人期待的Python新功能

因为此语法仅在Python 3.8及更高版本中有效,所以您应仅在保证使用这些更高版本的Python的新项目中使用它。 但这将是减少Python代码中经常弹出的样板的一种便捷方法。

断点()函数

大多数Python开发人员使用其Python IDE中的功能进行调试,例如在代码中手动插入断点。 Python 3.7中新增了breakpoint(),可让您手动将断点插入代码中-例如,在仅由某些条件触发的代码路径中。

这样可以更轻松地创建交互式调试行为。 使用breakpoint(),您甚至可以触发自定义调试功能,而不是默认的pdb,如果您还有其他用途。

类型提示改进

最长的时间里,Python没有明确的方式来指定变量或函数参数的类型。 现在,Python解释器直接支持类型提示和类型输入模块。

在运行时不强制使用Python中的类型提示。 但是,当与整理工具结合使用时,类型提示会消除很多错误,这些错误否则可能会由于Python的动态性而在生产中爆发。

Solo和团队开发人员都可以从此功能中受益。 此外,可以根据需要将类型提示逐渐添加到代码库中。

例如,您可能在团队之间使用的接口周围使用类型提示,然后在内部接口周围使用类型提示。

将来,您可能会看到更多使用第三方项目(如mypyc)来通过类型提示来实现Python的运行时加速。 如果以有限的方式进行,则现在可能会获得一些性能提升。 但是,使用打字还有许多其他直接好处,这些好处与程序员的生产力(Python的主要支柱)有关,而不是与原始性能有关。

在此博客中,我列举了Python功能,您可以在2020年的开发项目中期待这些功能。

相关推荐