Python3.9的新功能是什么?

众所周知,编程语言隔一段时间就会有新的版本发布,今天要介绍的是关于Python的新版本即将发布的信息。现在处于beta(3.9.0b3)中,我们很快将看到Python 3.9 的完整版本。一些最新功能令人难以置信,看到Python 3.9 在发布后会被使用。我们将看到以下新功能,即字典联合运算符、类型提示、两种新的字符串方法、新的Python解析器 。下面让我们首先看一下这些新功能以及我们如何使用这些功能。

Python3.9的新功能是什么?_业界动态_行业云

 词典联盟

我最喜欢的新功能之一,具有优美的语法。如果我们有两个字典a和b需要合并,我们现在使用并运算符。

我们有合并运算符|:

a={1:'a',2:'b',3:'c'}

b={4:'d',5:'e'}

c=a|b

print(c)

[输出]:{1:“a”,2:“b”,3:“c”,4:“d”,5:“e”}

还有更新运算符|=,它将更新原始字典:

a={1:'a',2:'b',3:'c'}

b={4:'d',5:'e'}

a|=b

print(a)

[输出]:{1:“a”,2:“b”,3:“c”,4:“d”,5:“e”}

如果我们的词典共享一个公共键,那么将使用第二个词典中的键值对:

a={1:'a',2:'b',3:'c',6:'inboth'}

b={4:'d',5:'e',6:'butdifferent'}

print(a|b)

[输出]:{1:“a”,2:“b”,3:“c”,6:“但与众不同”,4:“d”,5:“e”}

使用Iterables进行字典更新

|=运算符的另一个很酷的行为是能够使用可迭代对象使用新的键值对更新字典:

a={'a':'one','b':'two'}

b=((i,i**2)foriinrange(3))

a|=b

print(a)

[输出]:{'a':'one','b':'two',0:0、1:1、2:4}

如果我们对标准联合运算符尝试相同的操作|我们将收到TypeError,因为它将仅允许dict类型之间的并集。

类型提示

Python是动态类型的,这意味着我们无需在代码中指定数据类型。

没关系,但有时可能会造成混淆,突然之间,Python的灵活性比其他任何事情都变得更加令人讨厌。

从3.5开始,我们可以指定类型,但是非常麻烦。此更新确实改变了这一点,让我们使用一个示例:

在我们的add_int函数中,我们显然想为其自身添加相同的数字。但是我们的编辑器并不知道,并且完全可以使用+将两个字符串加在一起-因此不会发出警告。

现在,我们可以将期望的输入类型指定为int。使用此功能,我们的编辑人员可以立即了解问题。

我们也可以非常详细地了解所包含的类型,例如:

类型提示可以在任何地方使用-由于有了新的语法,现在它看起来更加简洁:

我们将sum_dict的参数指定为dict,并将返回值指定为int。在测试定义期间,我们还将确定其类型。

 字符串方法

虽然不像其他新功能那么迷人,但是仍然值得一提,因为它特别有用。添加了两个用于删除前缀和后缀的新字符串方法:

"Helloworld".removeprefix("He")

[出]:“llo世界”

Helloworld".removesuffix("ld")

[出]:“你好,我很担心”

 新解析器

这更多是视线之外的更改,但有可能成为Python未来发展中最重大的更改之一。

Python当前使用的主要是基于LL1的语法,而该语法又可以由LL1解析器进行解析,该解析器从上到下,从左至右解析代码,而前瞻性仅为一个标记。

现在,我几乎不知道它是如何工作的,但是由于使用了这种方法,因此我可以为您介绍Python中的一些当前问题:

Python包含非LL1语法;因此,当前语法的某些部分使用了变通方法,从而造成了不必要的复杂性。LL1在Python语法中产生了限制。该问题突出表明,以下代码根本无法使用当前解析器实现:

with(open("a_really_long_foo")asfoo,

open("a_really_long_bar")asbar):

    Python  

LL1在解析器中以左递归中断。意味着特定的递归语法可能导致解析树中的无限循环。Python的创建者GuidovanRossum解释说

所有这些因素对Python产生了重大影响。它们限制了语言的发展。

基于PEG的新解析器将为Python开发人员提供更大的灵活性,从Python3.10起我们将开始注意到这一点。

这就是我们即将推出的Python3.9所期待的一切。如果您实在迫不及待,可以在此处获取最新的Beta版本-3.9.0b3。

上述就是关于Python3.9的新功能是什么的全部内容介绍,想了解更多关于Python的信息,请继续关注。

71
111
0
6

相关资讯

  1. 1、张子枫新作又定一部,相似命运但或有不同结局361
  2. 2、周冬雨剃寸头后脏辫造型拍片,化身少女版“裘千尺”吃麻辣烫充饥4898
  3. 3、陈道明怒批抗日神剧,女主短裙露大白腿,男主染发梳大背头4306
  4. 4、曾搭档张一山和周冬雨,演了那么多影视剧,她的知名度还是很低763
  5. 5、《将夜》举办开播发布会陈飞宇称十七岁遇到最好的宁缺3939
  6. 6、《爱爱事》在京首映赵奕欢颠覆出演女丝529
  7. 7、为什么《武动乾坤》弹幕总有人把剧和小说做对比?只因观众肤浅?3287
  8. 8、金鹰后台:钟汉良后台连喊渴文章坚决不晒裸照1853
  9. 9、外表斯文儒雅,演坏人最入骨,走在街上被骂,搭档周星驰成经典1655
  10. 10、007打美队又打绿巨人,利刃出鞘添漫威明星,网友:老悬疑杀手了2671
全部评论(0)
我也有话说
0
收藏
点赞
顶部