Python 3.5 32位/64位官方版今天正式发(fā)布(bù)。该版本引入了很(hěn)多新特性,比如支持async/await异步编程(chéng),改进了对Python Zip应用的支持,引入(rù)了一个加载扩(kuò)展模块的改进(jìn)机制(zhì)等。

PEP 492 :支持async/await语法的协程(chéng)
PEP 492极大改进了Python中对异步编程的支持,增加了(le) awaitable对象 (可以(yǐ)是协(xié)程或(huò)者带有 __await__() 方法的对(duì)象)、 协程函数 、 异步迭代 和(hé) 异步上(shàng)下文管理器 等内容。
协程函(hán)数用新的async def语法声明:
>>>async def coro():
... return 'spam'
PEP 465 :新的矩阵相乘运算符:a @ b
PEP 448 :解包操作泛化(Unpacking Generalizations)
CPython实现的改进:
不(bú)再使(shǐ)用.pyo文(wén)件,而是引入了(le)一种更灵活的替代(dài)机(jī)制,.pyc文件(jiàn)可(kě)以(yǐ)表示(shì)优化和未优化的字(zì)节码。优化级别信(xìn)息可以包含在.pyc文件的名(míng)字(zì)中,具体可参见 PEP 488 。
重新设计(jì)了内(nèi)置和(hé)扩展(zhǎn)模块的加载机制,具体可参见 PEP 489 。
标准库也有重要改进:
collections.OrderedDict 现在是用C实(shí)现的,速度可以提升4到100倍(bèi)。
新的 os.scandir() 函数,支持更快速地遍历(lì)目录(lù)。
functools.lru_cache() 大部分用C重新实现了,带来了更好的性能。