当前位置: 首页 > news >正文

东乡建设网站网站运营维护的基本工作

东乡建设网站,网站运营维护的基本工作,农村自建别墅二层效果图,那家网站建设公司好这篇文章主要为大家介绍了Python3.10新特性之match语句示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪正文在Python 3.10发布之前,Python是没有类似于其他语言中switch语句的&…

这篇文章主要为大家介绍了Python3.10新特性之match语句示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

正文

在Python 3.10发布之前,Python是没有类似于其他语言中switch语句的,要实现类似的功能最简单的方法就是通过if ... elif ... else ...语句,但是这样毕竟不够优雅,不够“Pythonic”

更推荐的做法是通过字典(dict)实现。

通过字典间接实现 switch

想要通过字典来实现条件分支语句,首先我们需要定义一个字典,来表示不同case和返回值/函数之间的映射关系,然后再利用字典的特性,即可以实现类似于switch的功能。下面定义一个简单的函数,传入不同的case就会打印不同的内容,也可以将打印内容的语句替换成你想要执行的函数:

1

2

3

4

5

6

7

8

9

defswitch(case):

mapping ={

1: "print('case 1')",

2: "print('case 2')"

}

returneval(mapping[case])

switch(1)

运行结果:

case 1

可以看到,输出结果正是我们想要的“case 1”的结果。

在Python 3.10出现之前,我们更多的是通过上面这种字典映射的方式,来实现类似于switch语句的功能。但是伴随着Python 3.10的发布,Python也终于迎来了自己的'switch'语句,也就是接下来我们重点介绍的match语句。

Python 3.10 新特性—— match 语句,参考资料:Python 3.10增加了比switch更强大的match表达式在运行以下代码之前,请先确保自己的Python版本大于等于3.10。和其他语言一样,当变量num满足哪个case的条件时,就会执行该条件下的对应代码:

1

2

3

4

5

6

7

8

num =5

match num:

case 10:

print('you lose')

case 5:

print('you win')

运行结果:

you win

当默认分支#当变量a不满足任意一个case条件时,如果我们没有对“其他“情况进行处理,那么是不会执行任何操作的。

下面的代码是不会有任何输出的,因为a不满足任意一个条件:

1

2

3

4

5

6

7

num =3

match num:

case 1:

print('num 1')

case 2:

print('num 2')

无输出

1

2

3

4

5

6

7

8

9

10

11

如果想要对”其他“情况进行处理,那么写法如下:

num =3

match num:

case 1:

print('num 1')

case 2:

print('num 2')

case default:

print('case default', default)

运行结果:

case default 3

可以看到,当变量a不符合任意一个条件时,就会运行到我们的default分支,同时会把变量值赋值给default变量。注意:这里的default仅仅只是一个变量名而已,并非规定写法,也可以使用其他变量名,例如x等。其作用就是在变量不符合任意一个分支条件时,将变量值赋值给该变量。

在case中使用元组

Python的match语句不仅支持数值类型的分支,也支持其他数据类型,例如元组(tuple)

1

2

3

4

5

6

7

8

a =(2, 4)

match a:

case (1, 2):

print('case 1')

case (2, x):

print('case 2', x)

运行结果:

case 24

可以看到,变量a在匹配到第二个分支条件时,还把元组的第二个元素值4赋值给了变量x。在case中使用判断语句#不仅如此,match语句还支持在分支条件中插入判断语句:

1

2

3

4

5

6

7

8

9

10

11

a =(2, 2)

flag =False

match a:

case (1, 2):

print('case 1')

case (2, x) ifflag:

print('case 2', x)

case default:

print('case default', default)

运行结果:

case default (2, 2)

由于第二个分支条件中if flag为False,不符合条件,所以代码进入到最后一个分支条件中。

以上就是Python3.10新特性之match语句示例详解的详细内容。

http://www.ds6.com.cn/news/104031.html

相关文章:

  • 做网站容易还是做小程序容易友情链接交换
  • 医院网站设计与实现seo培训教程视频
  • 有没有专业做电视测评的网站国内做seo最好的公司
  • 临沭做网站怎么在百度投放广告
  • 代做备案网站企业关键词排名优化网址
  • 微信微网站开发教程产品线上营销有哪些方式
  • 选择ssm框架做网站的好处百度登陆页面
  • 广州微型网站建设seo渠道
  • 优秀专题网站贵港网站seo
  • 专业做蛋糕视频网站全国疫情防控最新数据
  • 江苏省建设执业网站长沙谷歌seo
  • 长沙网站seo按天计费哪些网站有友情链接
  • 网站建设与管理实训报告总结搜索引擎优化培训中心
  • iis默认网站属性如何制作一个公司网站
  • 网站建设大公司优化大师怎么提交作业
  • 绿色农产品网站谷歌浏览器2021最新版
  • 政府门户网站建设要素代做百度首页排名
  • 电脑网页游戏推荐短视频入口seo
  • 网站的优势百度客户端下载
  • asp.net网站开发项目源码潍坊新闻头条最新消息
  • 景安 怎么把网站做别名关键词歌词打印
  • 学建筑的网站bing搜索引擎入口
  • 怎么免费做带音乐的网站中国免费域名注册平台
  • 做网站用tomcat中小企业管理培训班
  • 我自己做的网站怎么能查到营销网站制作公司
  • 做旅游网站目的和意义怎么提升关键词的质量度
  • 模板网站建设教程视频网站免费网站免费
  • 2018网站建设行业seo外包优化网站
  • 如何做微网站平台seo文章优化技巧
  • 如何将网站部署到服务器平台推广费用一般是多少