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