葉鵬 沈曉恬
“基本的先后順序是從左往右,先計算括號中的部分,再計算不在括號中的部分,其中優(yōu)先級高的先計算?!逼刑崂献婵偨Y(jié)道,“跟你三百多歲開始學(xué)算術(shù)的時候,我告訴你的一樣?!?/p>
“……”猴子無語。
“對各種類型的變量,都有一些基本運算符,比如最常見的數(shù)字類型,Python中有一套運算符來實現(xiàn)基本的加減乘除操作。這些基本操作就像武術(shù)中的基本招式一樣,如直拳、擺拳、鞭腿、正踹、膝撞、肘擊等等。”
“有趣有趣,和我三百多歲剛學(xué)算術(shù)時的規(guī)矩一樣呢!”悟空插嘴,“師父,那字符串有運算符嗎?總不能兩個字符串相加吧?”
“哈哈,自然也是有的!”菩提老祖笑著回答。
“字符串和數(shù)字類型的變量,都可以比較大小,所以還有比較運算符?!?/p>
(說明:所有比較運算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價。注意這些變量名的大寫)
“切記,使用比較運算符時,比較的雙方都得是同一類型!”菩提老祖補充道。
“這俺自然曉得,不是一個類型的東西,那還比個啥?”悟空連連點頭。
邏輯運算符 (假設(shè)a=5,b=2)
菩提老祖接著說道:“同樣,還有一種邏輯運算符,可以對變量進行邏輯運算! ”
“邏輯運算我知道,就是與或非嘛,哈哈!”悟空大笑。
與運算中,進行運算的兩個變量都為真時,結(jié)果才為真;否則結(jié)果為假。
或運算中,進行運算的兩個變量都為假時,結(jié)果才為假;否則結(jié)果為真。
非運算中,進行運算的變量為真時,結(jié)果為假;否則結(jié)果為真。
悟空聽了菩提老祖的講述,撓著腦袋問道:“這么說來,邏輯運算符也能被用于數(shù)字型和字符串嗎?”
菩提老祖贊許地看了眼猴子,點點頭。
“在Python中,數(shù)字0或者空字符串在進行邏輯運算時,會被認為等價于False;而非0的數(shù)字或者非空字符串,會被認為是True。切記,這是Python的特別招式,與其他的編程語言可不太一樣?!?/p>
“明白!”猴子聽得秘辛,喜不自勝。
“其實,還有一種非常常用的運算符,稱為賦值運算符,它的作用就是把一個值賦給一個變量?!逼刑崂献胬^續(xù)說道。
“哦,就是通過等號來賦值嘛,這個簡單,俺老孫知道了!”
“真是性急的猴子,事情沒你想得那么簡單。來仔細看看!”菩提老祖笑罵道。
悟空恍然大悟:“原來是這樣,相當于在賦值前先做一次計算。師父你說發(fā)明Python的人是不是故意讓那些沒學(xué)過的人看不懂呀!嘿嘿!”
“你這猴頭!”菩提老祖作勢要打。
悟空連忙轉(zhuǎn)移話題:“師父,您老人家既然講了那么多運算符,那么在程序中,誰先誰后呢?要是沒有先后,豈不是亂套了?”悟空將心底的疑問說了出來,菩提老祖的注意隨即被這個問題轉(zhuǎn)開。
下面表格中,越靠上的運算符類型優(yōu)先級越高。
“基本的先后順序是從左往右,先計算括號中的部分,再計算不在括號中的部分,其中優(yōu)先級高的先計算?!逼刑崂献婵偨Y(jié)道,“跟你三百多歲開始學(xué)算術(shù)的時候,我告訴你的一樣?!?/p>
“……”猴子無語。