本節會介紹Python中運算子的用法,以及條件判斷和迴圈語句的使用方法。
運算子
運算子包括算術運算子、賦值運算子、比較運算子、邏輯運算子等內容,大部分用法和C#基本一致,下面我們來看一下:
- 算數運算子
對Python而言,算數運算子中的加減乘和取餘(+-*%)是和C#一致的,這裡不再介紹,有差異的在於以下幾個運算子:
-
- 單個/不是整除,//才是整除運算
-
- 指數運算使用**
2.賦值運算子
賦值運算子的用法和C#基本也一樣
3.比較運算子
比較運算子和C#一模一樣,如下:
4.邏輯運算子
前面的基本運算子和C#基本差不多,但是在邏輯運算子上面,Python完全不同於C#,對比如下:
條件判斷
Python不支援switch/case語句,僅支援if/else條件判斷。
Python的If語句包含了if,else,elif三個關鍵字,其基本語法為:
if 條件: ... elif 條件: ... else: ...
其中elif等同於C#中的else if,elif和else都不是必須的
此外值得一提的是,Python中的if/else語句可以簡寫,將判斷邏輯和執行程式碼合為一行,如下:
多重if巢狀也沒問題
此外Python不支援 "condition ? value1 : value2"這樣的三目運算語法,但可以使用if/else實現三目運算的功能,,如下:
迴圈語句
和C#相比,Python僅同樣支援for和while迴圈,不支援do...while迴圈語句
- for循化
python中for迴圈的用法和C#的foreach一直,用於從集合的迭代。其語法為"for 變數名 in 集合物件:"
那麼Python是否可以實現按照索引迭代集合呢?答案是可以,如下:
range方法生成了陣列的索引集合,此時i取到的就是每一個陣列索引。此案例中,len(fruits)取到了fruits陣列的長度3,range(3)則生成了索引陣列[0,1,2]。
- while迴圈
while迴圈的用法基本和C#一致,如下:
但Python中特殊的地方在於while支援else判斷語句,以在迴圈條件不滿足時,執行程式碼。如下:
此外,continue和break欄位同樣被Python支援,用法和C#一致,這裡不再贅述。