寫給.NET開發者的Python教程(三):運算符、條件判斷和循環語句

本節會介紹Python中運算符的用法,以及條件判斷和循環語句的使用方法。

 

運算符


 

運算符包括算術運算符、賦值運算符、比較運算符、邏輯運算符等內容,大部分用法和C#基本一致,下面我們來看一下:

  1. 算數運算符

  對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#一致,這裡不再贅述。