python3.6的一些新功能

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38934189/article/details/78845716

新的语法功能:

PEP 498,格式化字符串文字。
PEP 515,以数字文字强调。
PEP 526,变量注释的语法。
PEP 525,异步发电机。

PEP 530:异步解析。


新的图书馆模块:

secrets:PEP 506 - 将一个秘密模块添加到标准库。


CPython实现改进:
该字典类型已重新实现使用更紧凑的表示 基于由雷蒙德赫廷杰的建议 和类似PyPy字典实现。这导致与Python 3.5相比,字典使用的内存减少了20%到25%。
用新协议简化了课堂创作的自定义 。
类属性定义顺序 现在保留。
**kwargs现在 元素的顺序对应于关键字参数传递给函数的顺序。
DTrace和SystemTap 探测支持已添加。
新的PYTHONMALLOC环境变量现在可以用来调试解释器内存分配和访问错误。

标准库的重大改进:
该asyncio模块已获得新功能,显着的可用性和性能改进,以及相当数量的错误修复。从Python 3.6开始,asyncio模块不再 是临时的,API被认为是稳定的。
已经实现了一个新的文件系统路径协议来支持路径类对象。所有在路径上运行的标准库函数都已更新,可以使用新协议。
该datetime模块已获得本地时间消歧的支持 。
该typing模块得到了一些 改进。
该tracemalloc模块已经过重大修改,现在用于提供更好的输出,ResourceWarning 并为内存分配错误提供更好的诊断。请 参阅PYTHONMALLOC部分了解更多信 息。

安全改进:
secrets添加了新模块以简化适合于管理秘密(例如账户认证,令牌等)的密码强的伪随机数的生成。
在Linux上,os.urandom()现在阻塞,直到系统随机熵池被初始化以增加安全性。看到了PEP 524的理由。
在hashlib和ssl模块现在支持OpenSSL的1.1.0。
ssl模块的默认设置和功能集已得到改进。
该hashlib模块得到了对BLAKE2,SHA-3和SHAKE散列算法以及scrypt()密钥导出函数的支持。


Windows改进:
PEP 528和 PEP 529,Windows文件系统和控制台编码更改为UTF-8。
py.exe当用户没有指定版本(通过命令行参数或配置文件)时,启动器在交互使用时,不再偏爱Python 2而不是Python 3。shebang行的处理保持不变 - “python”在这 种情况下是指Python 2。
python.exe和pythonw.exe已被标记为长光程知道,这意味着260个字符的路径限制可能不再适用。有关详细信息,请参阅删除MAX_PATH限制。
一个._pth文件可以被添加到强制隔离模式和完全指定所有的搜索路径,以避免注册表和环境查找。有关更多信息,请参阅 文档。
一个python36.zip文件现在可以作为一个地标来推断 PYTHONHOME。有关更多信息,请参阅文档。

猜你喜欢

转载自blog.csdn.net/qq_38934189/article/details/78845716