Python 3.7 有什么新变化 - 其他语言更改&新模块

2023-05-16

其他语言更改

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 向后移植。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 3.7 有什么新变化 - 其他语言更改&新模块 的相关文章

随机推荐

  • 异步消息处理机制--线程

    多线程编程 执行一条耗时操作 xff0c 需放在子线程里运行 1 线程的基本用法 新建类继承 或实现接口 xff0c 重写方法 xff08 可直接内部类 xff09 class MyThread extends Thread run 处理具
  • 自定义适配器--ListView数据源的绑定

    ListView 利用自定义的适配器 xff0c 使用缓存机制优化 首先 xff0c ListView完整写法的三个步骤 xff1a 1 初始化数据源 2 定义适配器 3 加载适配器 一 数据源 1 定义数组保存已经准备好的数据源 2 定义
  • ViewPager + Fragment 仿微信滑动切换页卡

    1 新建类 xff0c 继承Fragment 导入的是v4的包 xff08 向下兼容 xff09 xff0c 利用布局加载器将其与xml结合起来 public class FragmentAddress extends Fragment 6
  • Android Studio 一些实用的快捷键

    Alt 43 Enter 自动导入提示 Ctrl 43 点击关键字 查看源码 Ctrl 43 tab 切换代码窗口 Ctrl 43 P 显示方法参数 Ctrl 43 Alt 43 t 弹出包围结构 xff08 if xff09 Ctrl 4
  • View、自定义View

    view绘制 1 控件架构 ViewGroup作为 父控件 xff0c 可包含多个View控件 xff0c 形成控件树 上层控件负责下层子控件的测量与绘制 xff0c 并传递交互事件 2 View的测量 绘制前提 96 96 96 onMe
  • 标题栏与水平滑动界面:TabLayout、ViewPager、Fragment;;引导页:ViewPager+View

    一 1 布局中添加TabLayout 控件 xff0c 需要添加依赖 xff1b 使用相关的属性 xff0c 需要定义命名空间 compile 39 com android support design 25 0 1 39 在app下的bu
  • SharedPerference

    1 定义前的考虑 1 xff09 定义存取方式 get put 2 xff09 明确数据类型 Int String Boolean 3 定义删除功能 单个 全部 2 实现步骤 public class SharedUtil public s
  • 圆形头像CircleImageView

    头像图片来源 照相机 相册 xff1b 利用弹出的dialog进行选择 1 添加依赖包 xff0c 添加控件 xff0c 相关属性 在app下的 build gradle 中添加 xff1a compile 39 de hdodenhof
  • RxVolley进行网络请求(get方式),获取json数据

    RxVolley 是一个基于 Volley的网络请求库 项目地址 xff1a https github com kymjs RxVolley 1 添加依赖 xff1a compile 39 com kymjs rxvolley rxvoll
  • SAP 寻找增强点的方法

    SAP中寻找增强的实现方法 SAP 增强已经发展过几代了 xff0c 可参考 SAP 标准教材 BC425 和 BC427 简单的说SAP的用户出口总共有四 代 1 第一代 基于源代码的增强 SAP提供一个空代码的子过程 xff0c 在这个
  • Sublime_text2快捷键

    1 Ctrl 43 Enter 在下一行输入 xff08 添加新的下一行 xff09 2 Ctrl 43 Shift 在上一行输入 xff08 添加新的上一行 xff09 3 Ctrl 43 L 选择当前行 4 Ctrl 43 K 43 B
  • jQuery基础

    1 应用jQuery库 xff1a lt script src 61 34 路径 名称 js 34 gt lt script gt 导入 外链式css样式 xff1a lt link rel 61 34 stylesheet 34 href
  • javaScript基础

    一 浏览器对象 1 window对象 xff1a 指当前的浏览器窗口 方法 xff1a 2 定 时器 xff1a 可设定一个时间之后 xff0c 再来运行 var timer 61 setInterval function 做的事情 xff
  • JavaScript深入浅出(进阶)

    1 数据类型 js是弱类型 xff0c 定义变量时不需要指定具体的数据类型 xff0c 因此会出现一些奇妙的事情 xff1a var num 61 23 number类型 num 61 34 23 34 string类型 34 23 34
  • H5

    一 总体变化 1 H5文档结构 span style font family SimSun font size 18px lt DOCTYPE html gt lt html gt lt head gt lt title gt 这是标题 l
  • JavaScript进阶之--DOM事件、动画(运动框架)

    DOM事件 一 事件流 描述的是从页面中接收事件的顺序 当你点击一个容器里的子控件时 xff0c 默认同时也点击了这个父容器 事件冒泡 ie xff1a 事件最开始由最具体的元素接收 xff0c 然后逐级向上传播到最不具体的结点 子 父 祖
  • CSS3基础与进阶

    一 CSS3新增的选择器 1 属性选择器 1 xff09 att 61 39 val 39 属性att的值以 34 val 34 开头的元素 2 xff09 att 61 39 val 39 结尾 3 xff09 att 61 39 val
  • macbook pro 识别不到外接显示器

    背景 最近在公司和家都用到外接显示器 回到家后合上mac 外接也跟着没信号了 重启后直接不识别了 机型macbookpro15 2018 系统版本10 15 4 1 确保 线材 外接显示器都没有问题 找其他电脑测试 2 不勾选 再次登录时重
  • cisco anyConnect 不用每次输入密码的办法

    opt cisco anyconnect bin vpn s connect HOST ADDRESS lt lt 34 EOF 34 VPN USERNAME VPN PASSWORD y EOF 可保存为sh 直接运行
  • Python 3.7 有什么新变化 - 其他语言更改&新模块

    其他语言更改 await 表达式和包含 async for 子句的推导在格式化字符串文本中的表达式中是非法的 xff0c 因为 实现 在Python 3 7中 xff0c 这个限制被取消了 现在可以将超过 255 个参数传递给函数 xff0