首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python3.8还没有捂热,Python3.9这么快就来了

Python3.8还没有捂热,Python3.9这么快就来了

作者头像
用户1667431
发布于 2020-10-26 07:26:41
发布于 2020-10-26 07:26:41
1.5K0
举报
文章被收录于专栏:大数据钻研大数据钻研

还在撸Python3.7?

Python3.8还没有捂热?

Python3.9,这么快就来了?!(外加七个感叹号)

版本迭代速度,直接反馈的是编程语言的活力强度。

Python3.9说来就来,接下来就一起解读下Python3.9的新特性吧!

1

Python3.9新特性

Python3.9新语法特性

  • PEP 584,为 dict 增加合并运算符。
  • PEP 585,标准多项集中的类型标注泛型。
  • PEP 614,放宽对装饰器的语法限制。

内置特性

  • PEP 616,移除前缀和后缀的字符串方法。

标准库中的特性

  • PEP 593,灵活的函数和变量标注。
  • 添加了 os.pidfd_open() ,允许不带竞争和信号的进程管理。

解释器方面的改进:

  • PEP 573,从 C 扩展类型的方法快速访问模块状态。
  • PEP 617,CPython 现在使用基于 PEG 的新解析器。
  • ……

库模块

  • PEP 615,IANA 时区数据库现在已包含于标准库的 zoneinfo 模块。
  • 图的拓扑排序实现现在已由新的 graphlib 模块提供。

2

Python3.9新特性必知图

为了更好地理解此次更新,Twitter上一位16岁少年Pratham Prasoon,还自制了一张Python 3.9新特性必知图」

列出了他认为比较重要的八大新特性,广受网友好评。

字典合并与更新运算符

此次「字典的合并与更新运算符」的新特性,是Python3.9的一大亮点。

合并 (|) 与更新 (|=) 运算符已被加入内置的 dict 类,扩充了现有的 dict.update 和 {**d1, **d2} 字典合并方法。

在Prasoon提供的图中也展示了对应的示例,如下图所示:

新增用于移除前缀和后缀的字符串方法

在Python的官方文档,以及Prasoon的图表中,也着重展示了新的用于「移除前缀和后缀的字符串」方法。

str.removeprefix(prefix)和str.removesuffix(suffix)可以方便地从字符串中,移除不需要的前缀或后缀:

标准多项集中的类型标注泛型

类型标注方面,现在可以使用内置的多项集类型(例如 list 和 dict)作为通用类型,而不必再从 typing 导入对应的大写形式类型名。

__import__()特性修改

__import__() 现在会引发 ImportError 而不是 ValueError。

至于原因,在Python的官方文档中有相应的解释:后者曾经会在相对导入超出其最高层级包时发生。

新增的模块

在新增模块方面,zoneinfo模块为标准库引入了 IANA 时区数据库

这是一个基于系统时区数据的实体 datetime.tzinfo 实现,示例如下图所示。

改进的模块

除了新增的模块外,Python3.9还对原有的一些模块进行了改进。

Prasoon举出了他认为比较重要的一项——Random

名为random.Random.randbytes的方法,可以用于生成随机字节串,如下图所示。

此外,还有cancel_futures

Python3.9将新的 cancel_futures 形参,添加到 concurrent.futures.Executor.shutdown(),可以取消尚未开始运行的所有挂起的 Future,而不必等待它们完成运行再关闭执行器。

当然,除了这八大新特性外,Python官方文档也更为详细地列举了此次更新的内容。

感兴趣的读者可以戳文末链接做更深入的了解。

给Python3.9新特性必知图作者上张照片吧

Pratham Prasoon是一位16岁的印度高中生,对金融充满激情,对编程世界充满好奇,自称是一个科学怪才(science geek)。

作为一名编程人员,他认为自己是「工具不可知」类型选手,也就是说,没有特别唯一是使用的编程语言,而是会根据自己的目的而做出选择。

目前,他正在学习React、 Flask、Django和Tensorflow。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-10-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java架构笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Pytorch中的分布式神经网络训练
随着深度学习的多项进步,复杂的网络(例如大型transformer 网络,更广更深的Resnet等)已经发展起来,从而需要了更大的内存空间。经常,在训练这些网络时,深度学习从业人员需要使用多个GPU来有效地训练它们。在本文中,我将向您介绍如何使用PyTorch在GPU集群上设置分布式神经网络训练。
deephub
2021/01/12
1.5K0
Pytorch中的分布式神经网络训练
独家|pytorch模型性能分析和优化
照片由 Torsten Dederichs 拍摄,上传到 Unsplash
数据派THU
2023/09/07
1.3K0
独家|pytorch模型性能分析和优化
Pytorch 多卡并行训练
DataParallel 使用起来非常方便,我们只需要用 DataParallel 包装模型,再设置一些参数即可。需要定义的参数包括:参与训练的 GPU 有哪些,device_ids=gpus;用于汇总梯度的 GPU 是哪个,output_device=gpus[0] 。DataParallel 会自动帮我们将数据切分 load 到相应 GPU,将模型复制到相应 GPU,进行正向传播计算梯度并汇总:
为为为什么
2022/08/09
4.2K0
Pytorch 多卡并行训练
PyTorch模型性能分析与优化
训练深度学习模型,尤其是大型模型,可能是一项昂贵的支出。我们可以使用的管理这些成本的主要方法之一是性能优化。性能优化是一个迭代过程,我们不断寻找提高应用程序性能的机会,然后利用这些机会。在之前的文章中(例如此处),我们强调了拥有适当工具来进行此分析的重要性。工具的选择可能取决于许多因素,包括训练加速器的类型(例如 GPU、HPU 或其他)和训练框架。
数据科学工厂
2023/09/06
4980
PyTorch模型性能分析与优化
PyTorch 模型性能分析和优化 - 第 2 部分
这是有关分析和优化在 GPU 上运行的 PyTorch 模型主题的系列文章的第二部分。在第一篇文章中,我们演示了使用 PyTorch Profiler 和 TensorBoard 迭代分析和优化 PyTorch 模型的过程以及巨大潜力。在这篇文章中,我们将重点关注 PyTorch 中由于使用急切执行而特别普遍的特定类型的性能问题:模型执行部分对 CPU 的依赖。识别此类问题的存在和根源可能非常困难,并且通常需要使用专用的性能分析器。在这篇文章[1]中,我们将分享一些在使用 PyTorch Profiler 和 PyTorch Profiler TensorBoard 插件时识别此类性能问题的技巧。
数据科学工厂
2023/09/06
6870
PyTorch 模型性能分析和优化 - 第 2 部分
pytorch中一些最基本函数和类
这些基本函数和类构成了PyTorch框架的基础,能够帮助用户高效地进行深度学习模型的构建和训练。此外,PyTorch还提供了丰富的API文档和教程,以供进一步学习和探索.
用户11315985
2024/10/16
4260
pytorch中一些最基本函数和类
最新翻译的官方 PyTorch 简易入门教程
https://github.com/fengdu78/machine_learning_beginner/tree/master/PyTorch_beginner
用户1737318
2019/11/19
1.6K0
最新翻译的官方 PyTorch 简易入门教程
Github项目推荐 | PyTorch代码规范最佳实践和样式指南
AI 科技评论按,本文不是 Python 的官方风格指南。本文总结了使用 PyTorch 框架进行深入学习的一年多经验中的最佳实践。本文分享的知识主要是以研究的角度来看的,它来源于一个开元的 github 项目。
AI科技评论
2019/05/14
2.3K0
《算力狂飙!万亿参数模型推理加速全攻略 》
家人们,如今 AI 界 “卷” 得那叫一个厉害,万亿参数模型如雨后春笋般不断涌现。这些模型虽然超级强大,但对算力的要求,简直就是 “无底洞”。想要让它们在实际应用中,又快又稳地运行,推理优化就成了关键!今天,小编就带着大家,一起探索万亿参数模型推理优化的秘籍,从混合精度计算到分布式显存调度,为大家奉上全链路加速指南!
小白的大数据之旅
2025/04/03
2040
《算力狂飙!万亿参数模型推理加速全攻略 》
PyTorch 实现数据并行的 BERT
在这篇文章里,我们要把 BERT(Bidirectional Encoder Representations from Transformers) 和 PyTorch 的数据并行(DataParallel) 这两位重量级选手拉到一起,手把手教你如何高效地在多张显卡上训练 BERT 模型。不管你是 PyTorch 小白,还是刚接触深度学习,这篇文章都能让你轻松理解它们的底层逻辑,并且学会如何在实际项目中使用它们。
繁依Fanyi
2025/03/28
2060
讲解pytorch 优化GPU显存占用,避免out of memory
在深度学习任务中,对于复杂的神经网络和大规模的训练数据,显存占用成为一个常见的问题。当我们的模型和数据超出GPU显存的限制时,就会出现"out of memory"的错误。为了解决这个问题,我们可以采取一些优化策略来降低显存的占用。
大盘鸡拌面
2023/12/26
7.4K0
Pytorch中的Distributed Data Parallel与混合精度训练(Apex)
Distributed data parallel training in Pytorchyangkky.github.io
磐创AI
2021/01/12
1.2K0
Pytorch中的Distributed Data Parallel与混合精度训练(Apex)
深度学习性能飙升的秘密——GPU优化的小窍门
大家好,我是Echo_Wish,这篇文章将和大家聊聊深度学习中一个不可或缺的话题:如何优化GPU的使用,让你的训练任务快如闪电。如果你也曾因训练模型太慢,望着进度条抓狂,那么接下来的内容可能会帮到你。本文用简单明了的语言,并结合代码实例,分享一些GPU优化的小窍门,让你的深度学习任务效率翻倍。
Echo_Wish
2025/03/31
3150
深度学习性能飙升的秘密——GPU优化的小窍门
点赞收藏:PyTorch常用代码段整理合集
PyTorch 将被安装在 anaconda3/lib/python3.7/site-packages/torch/目录下。
机器之心
2019/05/10
1.7K0
快速入门PyTorch(3)--训练一个图片分类器和多 GPUs 训练
这是快速入门 PyTorch 的第三篇教程也是最后一篇教程,这次将会在 CIFAR10 数据集上简单训练一个图片分类器,将会简单实现一个分类器从网络定义、数据处理和加载到训练网络模型,最后测试模型性能的流程。以及如何使用多 GPUs 训练网络模型。
kbsc13
2019/08/16
1.2K0
Transformer注解及PyTorch实现(下)
我们使用标准WMT 2014英语-德语数据集进行了训练,该数据集包含大约450万个句子对。使用字节对的编码方法对句子进行编码,该编码具有大约37000个词的共享源-目标词汇表。对于英语-法语,我们使用了WMT 2014 英语-法语数据集,该数据集由36M个句子组成,并将词分成32000个词片(Word-piece)的词汇表。
YoungTimes
2022/04/28
9910
Transformer注解及PyTorch实现(下)
最完整的PyTorch数据科学家指南(2)
因此,Conv2d图层需要使用Cin通道将高度为H且宽度为W的图像作为输入 。现在,对于卷积网络中的第一层,的数量in_channels将为3(RGB),并且out_channels用户可以定义数量。kernel_size大多采用3×3是,并且stride通常使用为1。
计算机与AI
2020/12/14
1.3K0
最完整的PyTorch数据科学家指南(2)
PyTorch 模型性能分析和优化 - 第 3 部分
这[1]是关于使用 PyTorch Profiler 和 TensorBoard 分析和优化 PyTorch 模型主题的系列文章的第三部分。我们的目的是强调基于 GPU 的训练工作负载的性能分析和优化的好处及其对训练速度和成本的潜在影响。特别是,我们希望向所有机器学习开发人员展示 PyTorch Profiler 和 TensorBoard 等分析工具的可访问性。您无需成为 CUDA 专家即可通过应用我们在帖子中讨论的技术获得有意义的性能提升。
数据科学工厂
2023/09/06
5690
PyTorch 模型性能分析和优化 - 第 3 部分
AI加速引擎PAI-TorchAcc-整体介绍与性能概述
在当今深度学习的快速发展中,模型训练和推理的效率变得尤为重要。为了应对计算需求不断增长的挑战,AI加速引擎应运而生。其中,PAI-TorchAcc作为一个新兴的加速引擎,旨在提升PyTorch框架下的计算性能。本文将详细介绍PAI-TorchAcc的基本概念、主要特性,并通过代码实例展示其性能优势。
一键难忘
2024/10/05
3070
教程 | PyTorch经验指南:技巧与陷阱
项目地址:https://github.com/Kaixhin/grokking-pytorch
机器之心
2018/08/07
1.6K0
教程 | PyTorch经验指南:技巧与陷阱
推荐阅读
相关推荐
Pytorch中的分布式神经网络训练
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档