Python3.8新特性-- 海象操作符

非 Y 不嫁゛ 提交于 2019-12-05 07:06:04

“理论联系实惠,密切联系领导,表扬和自我表扬”——我就是老司机,曾经写文章教各位怎么打拼职场的老司机。

不记得没关系,只需要知道:有这么一位老司机,

穿上西装带大家打拼职场!

操起键盘带大家打磨技术!

 2019年10月中旬,Python 3.8发布了。

    英语好的Python爱好者,可以看看官宣:

https://docs.python.org/3.8/whatsnew/3.8.html

今天老司机给大家介绍一个Python3.8中,比较有争议的新运算符,海象运算符(Walrus)。

海象运算符,其实只是冒号和等号在一起,就像这样:“:=”。是不是像海象的一双眼睛和一对獠牙?

这个新运算符(:=)使我们能够将值赋给表达式中的变量。

    简单粗暴地讲,将计算结果赋值给某个变量,再判断这个变量。

    我们来举个栗子:

本来应该是下面这样一段简单程序。

list1 = [1,2,3,4,5]

b = len(list1)

if b > 3:

   print(“larger than 3”)

 

    使用了海象运算符,两行并一行,就变成了这样了:

list1 = [1,2,3,4,5]

if b := len(list1) > 3:

print(“larger than 3”)

## 运行结果:

larger than 3

    必须是Python 3.8上才能运行通过的。

 

    再看个例子:

list1 = [1,2,3,4,5]

if c := ( 3 in list1) :

print(“found”)

else:

print(“not found”)

## 运行结果:

found

    必须是Python 3.8上才能运行通过的。

 

    有兴趣的可以看看PEP 572,链接:

https://www.python.org/dev/peps/pep-0572/ 

写得比较高大上 ^_^

 一定记住:

海象运算符不向前兼容!

海象运算符不向前兼容!!

海象运算符不向前兼容!!!

也就是说,如果没升级到Python 3.8的小伙伴,还是不要尝试“:=”了。

使用PyCharm的用户,即使已经升级了Python到3.8,而且更新了PyCharm里面的解释器配置,还是会遇到如下语法报错问题:

    看看解释器的显示:

    直接执行程序是不报错的,或者在Python IDLE里面也是正常的。

但是毕竟红色波浪线看起来很不舒服。

老司机告诉各位一个简单粗暴的办法——升级PyCharm到最新版本

    一切解决!

    Python 3.8尝鲜版,体验Walrus运算符,到此结束。

    至于是否升级到Python 3.8,老司机建议:

 Python不是时尚衣物和饰品,如果用的Python 3.*还好好的,没必要追新。

    PS:怎么搞定PyCharm专业版注册,百度一下你就知道了。

作  者:Testfan Arthur

出  处:微信公众号:自动化软件测试平台

版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!