Python 3.7 有什么新变化 - 其他语言更改&新模块
Posted ItisNagatoYuki
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 3.7 有什么新变化 - 其他语言更改&新模块相关的知识,希望对你有一定的参考价值。
其他语言更改
await 表达式和包含 async for 子句的推导在格式化字符串文本中的表达式中是非法的,因为 实现。在Python 3.7中,这个限制被取消了。
现在可以将超过 255 个参数传递给函数,并且函数可以 现在有超过 255 个参数。(由Serhiy Storchaka在bpo-12844和bpo-18896中提供。
bytes.fromhex() 和 bytearray.fromhex() 现在忽略所有 ASCII 空格,而不仅仅是空格。(由Robert Xiao在bpo-28927中提供。
str、bytes 和 bytearray 获得了对 新的 Isascii() 方法,可用于 测试字符串或字节是否仅包含 ASCII 字符。 (由INADA Naoki在bpo-32677中提供。
ImportError 现在在失败时显示模块名称和模块路径。(由Matthias Bussonnier在bpo-29546中提供。__file__from … import …
循环导入涉及将子模块绑定到的绝对导入 现在支持名称。 (由Serhiy Storchaka在bpo-30024中提供。
object.format(x, ‘’)现在等效于 而不是 。 (由Serhiy Storchaka在bpo-28974中提供。str(x)format(str(self), ‘’)
为了更好地支持堆栈跟踪、类型的动态创建。TracebackType 现在可以从 Python 代码实例化,并且 回溯上的属性现在是 写。 (由Nathaniel J. Smith在bpo-30579中提供。tb_next
使用 -m 开关时,现在急切地扩展 到完整的起始目录路径,而不是留空 目录(允许从当前工作目录导入 导入发生的时间) (由 Nick Coghlan 在 bpo-33053 中提供。sys.path[0]
新的 -X 选项或 PYTHONPROFILEIMPORTTIME 环境变量可用于显示 每个模块导入的计时。 (由 Victor Stinner 在 bpo-31415 中提供。importtime
新模块
上下文变量
新的 contextvars 模块和一组新的 C API 引入了 支持上下文变量。上下文变量在概念上是 类似于线程局部变量。与 TLS 不同,上下文变量 正确支持异步代码。
异步和十进制模块已更新为 使用 并支持开箱即用的上下文变量。特别是活跃的 十进制上下文现在存储在上下文变量中,这允许 十进制运算,用于在异步代码中使用正确的上下文。
参见
PEP 567 – 上下文变量
PEP由Yury Selivanov编写和实施
数据类
新的 dataclass() 装饰器提供了一种声明数据类的方法。数据类使用类变量描述其属性 附注。它的构造函数和其他魔术方法,如__repr__()、eq()和__hash__()是自动生成的。
例:
@dataclass
class Point:
x: float
y: float
z: float = 0.0
p = Point(1.5, 2.5)
print(p) # produces "Point(x=1.5, y=2.5, z=0.0)"
参见
PEP 557 – 数据类
PEP由Eric V. Smith编写和实施
importlib.resources
新的importlib.resources模块提供了几个新的API和一个 新的 ABC,用于访问、打开和读取包内的资源。 资源与包中的文件大致相似,但它们不需要 是物理文件系统上的实际文件。模块加载器可以提供返回的函数 一个importlib.abc.ResourceReader实例来支持这一点 新的 API。内置文件路径加载程序和 zip 文件加载程序都支持此功能。get_resource_reader()
由Barry Warsaw和Brett Cannon在bpo-32248中提供。
另请参阅importlib_resources – 早期 Python 版本的 PyPI 向后移植。
为什么Python要比其他语言更受喜欢?
提及到编程原因,不少人都会想到Python,Python是一门非常受欢迎的编程语言,也是市场上使用率非常高的编程语言,那么Python为什么这么受欢迎?为大家简单的介绍一下。
Python是一种高级的脚本语言,要比其他的原因学习起来更加强大,它具有动态特性和简单的语法,编写代码数量少,但是可以实现强大的功能。
从这点优势上就能够凸显出来Python的与众不同,也是为什么很多公司喜欢Python。同时机器学习的流行也推动了Python的发展,Python可以具有非常不错的科学和数值计算的标准库,可以在Linux、Windows、MAC os和Unix上运行。
为什么Python如此受欢迎?因为Python独特其他语言没有的特性,它是一门高级的编程语言,通过许多库进行扩展,允许重用和回收程序……都是Python的优势。
同时Python具有很多优点,可以广泛的应用在软件开发、web开发、人工智能、机器学习等领域,具有标准库的支持html、json、xml、imap、ftp等互联网协议,支持许多操作。正因为具有诸多的用途和优势,让它要比其他语言更受喜欢。
而且Python的优势远不仅如此,还具有很多独特的优势所在,总结来说Python是一门非常不错的编程语言,如果对他感兴趣一定要抓紧机会好好学习,是一个非常不错的选择。
以上是关于Python 3.7 有什么新变化 - 其他语言更改&新模块的主要内容,如果未能解决你的问题,请参考以下文章