Python培训分享:Python新版本中的6个新特性
Python在几年做了一个全面的升级,此次Python升级中有6个新特性,本期小编为大家介绍的Python培训教程就是关于介绍Python新版本中的6个新特性的,来看看下面的详细介绍。
Python培训分享:Python 3.10 有几个新的很酷的功能,使得使用 Python 成为一种更好的体验。
更清楚的错误追踪
作为一个每天写Python 、教Python 的人,我深知遇到语法错误的挫败感。尽管一旦你掌握了Python和编程,就很容易修复语法错误,但是我们还是希望错误消息能给我们更好的提示,以帮助我们更好地定位错误并节省调试时间。
在Python 3.10中,两个新特性使得我们可以更好地处理错误,他们是更清楚地错误消息以及精确的行号。比如,我们有以下代码,包含一个字典和一个函数。但是我们忘记了字典结束的花括号“}”。
1 some_dict =
2 {1: "jack",
3 2: "john",
4 3: "james" ,
5 a_results = a_useful_function()
在之前的Python版本中,错误信息如下:
1 File "amazing_code.py",
2 line 3 a_results = a_useful_function()
3 ^ SyntaxError: invalid syntax # 无效的语法
但是,随着新的错误消息和行号的改进,新的错误消息将包含更好的信息,例如准确的错误类型和精确的行号。
1 File "amazing_code.py",
2 line 1 expected =
3 {1: "jack",
4 2: "john",
5 3: "james" ,
6 ^ SyntaxError: '{' was never closed # 未关闭的 “ { ”
这一新特性将有助于加快调试速度,并减少人们开始学习 Python 的挫败感。
结构化模式匹配
如果您使用过 C++ 等其他编程语言,您可能希望 Python 有 switch 语句,这样您就不必经历冗长的 if、elif、elif、…、else 语句。好吧,Python 3.10 的新特性之一是添加了结构化模式匹配,或者换句话说,具有以下语法的 switch、case 语句。
1 match subject:
2 case:
3 case:
4 case:
5 case _:
新的类型联合运算符
尽管 Python 是一种动态类型的编程语言,但还是有一些方法可以使它的某些部分成为静态类型的。比如,你正在写一个函数,而属性的类型对于函数的内部通信很重要。在之前的版本中,你可以指定类型如下:
1 def func(num: int) -> int: return num + 5
但是,如果你要接受两种类型,你就需要使用Union关键字。
1 def func(num: Union[int, float]) -> Union[int, float]: return num + 5
在新版Python中,你可以用“|”运算符替代Union关键字,这样会更直接。
1 def func(num: int | float) -> int | float: return num + 5
其他很酷的特性
4.1 更严格的zip
Python的乐趣之一就是zip()函数。它是一个内置函数,允许你同时遍历多个序列,并组合其返回值。在之前的版本中,你可以对不同长度的序列使用zip。但是,现在有了一个新的参数,strict,用来检查可遍历对象是否长度一致。
4.2 自动文本编码
作为程序员,我们会说,“他在我的电脑上能运行的”。代码在一台机器上运行而不在另一台机器上运行的原因有很多;文本编码可能会导致此类错误。
在以前的 Python 版本中,如果没有明确说明编码类型,首选的本地编码可能会导致代码在其他机器上失败。在 Python 3.10 中,可以激活警告以通知用户打开文本文件没有指定编码类型。
4.3 异步迭代
异步编程是一个强大而先进的编程范式,它从 3.5 版开始就成为 Python 的一部分。在Python 3.10,有两个新的异步的内置功能aiter()和anext()使你的代码更易读。
以上就是为大家介绍的关于“Python新版本中的6个新特性”的内容,Python的每个版本,都带来了不起的新特性。这些特性是大部分Python程序员需要的,能让我们高效写Python代码。总之,它们让人们写代码更容易。
相关文章:

indows上的android开发环境软件架构5
(二)实验要求: ? 修改按下button 显示的内容中添加上自己的学号姓名; ? 添加一个按钮,按钮名称为“退出”,并且为这个按钮添加事件代码,使得点击这个按钮后退 出程序。事件代码如下: FullscreenActivity.…

日志服务Flink Connector《支持Exactly Once》
摘要:Flink log connector是阿里云日志服务推出的,用于对接Flink的工具,包含两块,分别是消费者和生产者,消费者用于从日志服务中读数据,支持exactly once语义,生产者用于将数据写到日志服务中&a…

【组队学习】【27期】Java编程语言
Java编程语言 论坛版块: http://datawhale.club/c/team-learning/33-category/33 开源内容: https://github.com/datawhalechina/team-learning-program/tree/master/Java 学习目标 Java独特的面向对象的抽象类编程特点,广泛应用于应用…

UI培训分享:如何提升自己的UI设计能力
相信很多UI设计师在工作中经常会遇到瓶颈,那么如何提升自己的UI设计能力?是我们要思考的一个问题,下面小编就为大家分享—些建议。 UI培训分享:如何提升自己的UI设计能力 1、多看 国内知名的设计网站,比如站酷网、花瓣网、多看优…

微信小程序使用阿里巴巴iconfont字体图标
打开阿里巴巴iconfont官网(http://www.iconfont.cn/);把用到的字体图标加到项目里面; 进入到项目里面,选择font class方式来使用,如果没有生成过代码的同学点生成,已经有代码的直接复制代码;iconfont.pngiconfont.png4.浏览器新建页面&…

IIS6 MVC3 配置
用mvc3做了一个网站,重写了下URL,http://www.xxxx.com/news/details/54.html. 结果在iis上预览找不到页面,但是在vs下就没问题直接运行就没问题。 具体的原因应该是找不到映射。 所以需要在iis上添加映射。 添加MVC的解析: 右击II…

【组队学习】【27期】动手学数据分析
动手学数据分析 论坛版块: http://datawhale.club/c/team-learning/25-category/25 开源内容: https://github.com/datawhalechina/hands-on-data-analysis 学习目标 以项目为主线,通过边学,边做以及边被引导的方式…

参加UI培训后可以找什么工作
UI设计在近几年备受大家的关注,很多企业对UI设计这个岗位也显得尤为重要,很多人都想转型学习UI设计技术,大多数人选择参加UI培训机构进行系统学习,那么通过系统培训的同学参加UI培训后可以找什么工作呢?来看看下面的详细介绍。 参…

Datawhale组队学习周报(第021周)
本文总结了本周(07月05日~07月11日)Datawhale组队学习的运行情况,我们一直秉承“与学习者一起成长的理念”,希望这个活动能够让更多的学习者受益。 第 25 期组队学习一共有 3 门开源课程,共组建了 3 个学习群…

alias重启终端失效的问题
如果使用命令 alias xxxxxx 那么登出以后,别名就会失效。下次登入的时候就不能用了。 为了保持别名可以把它写入.bashrc 在.bashrc的最后写入想要的别名,比如 alias zpll -al 然后退出,重新登入的时候就可以用了。 或者直接运行命令 source ~…

使用文本用户界面(NMTUI)进行网络配置
NetworkManager 文本用户界面(TUI)工具 nmtui 可提供一个文本界面配置由 NetworkManager 控制的网络。该工具包含在 NetworkManager-tui 子软件包中。写入时,不会默认随 NetworkManager 安装该子软件包。要安装 NetworkManager-tui࿰…

UI培训教程分享:常用的商业插画风格有哪些?
在UI设计岗位中插画设计是作为一名合格的UI设计师都会接触到的工作内容,运用插画设计,做到图文结合,令用户的印象也更加深刻,今天小编为大家分享的UI培训教程就是关于常用的商业插画风格有哪些?希望能够给大家带来帮助。 UI培训教…

快速构建Windows 8风格应用32-构建辅助磁贴
引言 Windows Phone中,我们开发者可能会开发的一个功能点是将数据列表中某一项“Pin To Start(固定到开始屏幕)”,大家都知道这种固定到开始屏幕的磁贴叫做辅助磁贴(也叫二级磁贴),用户可以通过该辅助磁贴启动应用程序…

【第22周复盘】可以查成绩了!
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档&…

UI培训教程分享:APP启动页UI界面设计
本期为大家分享的ui培训教程是关于APP启动页面的UI设计方面,作为一名合格的UI设计师,APP产品的启动页是需要会的,下面就来看看详细的教程吧。 UI培训教程分享:APP启动页UI界面设计 启动页面在APP中还是很有必要的,对于…

Nginx 配置
content_by_lua ‘’; set_by_lua $c "return ngx.var.a ngx.var.b"; rewrite_by_lua "ngx.var.a ngx.var.a 1"; access_by_lua if ngx.var.remote_addr "127.0.0.1" thenreturnendngx.exit(403);虚拟主机 server_name .a.org; …

cd: mkdir: rmdir: rm
1、1 绝对路径和相对路径绝对路径:是指在目录下的绝对位置,直接到的目标位置例如:只要看到这个路径:D:\图片\徐慧茹.jpg"文件是在D盘的“图片”目录中。类似这样完整的描述文件的路径就是绝对路径。相对路径&…

【Whalepaper】CV论文研读 - Involution内卷:超越Convolution的新算子
Whalepaper是由周郴莲负责的一个每周分享论文的活动,带你研读AI领域的论文,快来一起开源学术科研吧! NLP 论文分享:每周日 晚上 九点CV 论文分享: 每周日 晚上 九点Res 论文分享:每周六 晚上 九点半 欢迎…

UI培训分享:UI设计师要掌握哪些知识点
UI设计师除了要学会自己所在行业的技术之外,还要了解一些其他的知识点,这些知识点都会在今后的工作中带来帮助,甚至是加分项,那么下面来看看小编为大家介绍的UI培训分享:UI设计师要掌握哪些知识点? UI培训分享&#x…

JavaScript 关闭窗口事件
方式一:(适用与IE浏览器,而且刷新不提示,只在点击浏览器关闭按钮的时候提示) <script type"text/javascript"> window.οnbefοreunlοadonclose; function onclose() { if(event.clientX>document.body.clientWidth&…

【直播】闫强:文本分类上分利器 -- Bert微调技巧大全
文本分类上分利器 – Bert微调技巧大全 直播信息 主讲人:ChallengeHub成员,中国人民大学硕士。 直播时间:2021年07月25日 15:00~16:00 直播内容: 经典论文介绍与解读模型继续预训练实现交流&答疑 直播网址: …

计算机基础第二课时
文件后缀名 1.也称文件扩展名(filename extension) 2.是操作系统用来标志文件类型的一种机制 3.通常来说,一个扩展名是跟在主文件名后面的,由一个分隔符分隔。例如:“前端开发知识要点.txt”的文件名中,前端开发知识要点是主文件名…

ui培训教程分享:平面设计怎样视觉空间感?
本期UI培训教程为大家分享的是关于平面设计怎样视觉空间感?在UI设计岗位中,视觉空间感对于设计师来说是非常重要的,所谓空间,是指立体形态周围的空虚部分,空间是无限的。任何空间形态的建立都必须借助立体形态来表达,…

Android组件框架:Android组件管理者ActivityManager
关于作者 郭孝星,程序员,吉他手,主要从事Android平台基础架构方面的工作,欢迎交流技术方面的问题,可以去我的Github提issue或者发邮件至guoxiaoxingse163.com与我交流。 第一次阅览本系列文章,请参见导读&a…

[转]HTTP协议详解
当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内…

【Whalepaper】NLP论文研读 - Keyword-Attentive Deep Semantic Matching
Whalepaper是由周郴莲负责的一个每周分享论文的活动,带你研读AI领域的论文,快来一起开源学术科研吧! NLP 论文分享:每周日 晚上 九点CV 论文分享: 每周日 晚上 九点Res 论文分享:每周六 晚上 九点半 欢迎…

web前端的就业前景好不好
web前端的就业前景好不好?一直有人都想知道这个答案,其实放眼互联网未来,web前端的发展前景都是非常好的,那么它的就业前景自热也是不错,具体来看看下面的详细介绍就知道了。 web前端的就业前景好不好?近几年的热门行业里&#…

android:HTTP通信 .
HTTP: 超文本传送协议(hypertext transport protocol),用于传送WWW方式的数据。属于应用层的面向对象的协议。HTTP采用了请求/响应模型。客户端向服务器发送的请求包含了:请求的方法、URL、协议版本、请求修饰符、客户…

【青少年编程】【三级】打气球游戏
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。 微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档&…

(转)如何修改maven的默认jdk版本
背景:在maven的配置文件中配置编译的jdk插件,就不需要在eclipse中进行重新的指定了。 问题 1、创建maven项目的时候,jdk版本是1.5版本,而自己安装的是1.7或者1.8版本。 2、每次右键项目名-maven->update project 时候ÿ…