叶鹏 沈晓恬
“基本的先后顺序是从左往右,先计算括号中的部分,再计算不在括号中的部分,其中优先级高的先计算。”菩提老祖总结道,“跟你三百多岁开始学算术的时候,我告诉你的一样。”
“……”猴子无语。
“对各种类型的变量,都有一些基本运算符,比如最常见的数字类型,Python中有一套运算符来实现基本的加减乘除操作。这些基本操作就像武术中的基本招式一样,如直拳、摆拳、鞭腿、正踹、膝撞、肘击等等。”
“有趣有趣,和我三百多岁刚学算术时的规矩一样呢!”悟空插嘴,“师父,那字符串有运算符吗?总不能两个字符串相加吧?”
“哈哈,自然也是有的!”菩提老祖笑着回答。
“字符串和数字类型的变量,都可以比较大小,所以还有比较运算符。”
(说明:所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意这些变量名的大写)
“切记,使用比较运算符时,比较的双方都得是同一类型!”菩提老祖补充道。
“这俺自然晓得,不是一个类型的东西,那还比个啥?”悟空连连点头。
逻辑运算符 (假设a=5,b=2)
菩提老祖接着说道:“同样,还有一种逻辑运算符,可以对变量进行逻辑运算! ”
“逻辑运算我知道,就是与或非嘛,哈哈!”悟空大笑。
与运算中,进行运算的两个变量都为真时,结果才为真;否则结果为假。
或运算中,进行运算的两个变量都为假时,结果才为假;否则结果为真。
非运算中,进行运算的变量为真时,结果为假;否则结果为真。
悟空听了菩提老祖的讲述,挠着脑袋问道:“这么说来,逻辑运算符也能被用于数字型和字符串吗?”
菩提老祖赞许地看了眼猴子,点点头。
“在Python中,数字0或者空字符串在进行逻辑运算时,会被认为等价于False;而非0的数字或者非空字符串,会被认为是True。切记,这是Python的特别招式,与其他的编程语言可不太一样。”
“明白!”猴子听得秘辛,喜不自胜。
“其实,还有一种非常常用的运算符,称为赋值运算符,它的作用就是把一个值赋给一个变量。”菩提老祖继续说道。
“哦,就是通过等号来赋值嘛,这个简单,俺老孙知道了!”
“真是性急的猴子,事情没你想得那么简单。来仔细看看!”菩提老祖笑骂道。
悟空恍然大悟:“原来是这样,相当于在赋值前先做一次计算。师父你说发明Python的人是不是故意让那些没学过的人看不懂呀!嘿嘿!”
“你这猴头!”菩提老祖作势要打。
悟空连忙转移话题:“师父,您老人家既然讲了那么多运算符,那么在程序中,谁先谁后呢?要是没有先后,岂不是乱套了?”悟空将心底的疑问说了出来,菩提老祖的注意随即被这个问题转开。
下面表格中,越靠上的运算符类型优先级越高。
“基本的先后順序是从左往右,先计算括号中的部分,再计算不在括号中的部分,其中优先级高的先计算。”菩提老祖总结道,“跟你三百多岁开始学算术的时候,我告诉你的一样。”
“……”猴子无语。