運算優先級
從小學數學開始,就研究運算優先級的問題,比如四則運算中“先乘除,后加減”,說明乘法、除法的優先級要高於加減。
對於同一級別的,就按照“從左到右”的順序進行計算。
下面的表格中列出了python中的各種運算的優先級順序。不過,就一般情況而言,不需要記憶,完全可以按照數學中的去理解,因為人類既然已經發明了數學,在計算機中進行的運算就不需要從新編寫一套新規范了,只需要符合數學中的即可。
| 運算符 | 描述 |
|---|---|
| lambda | Lambda表達式 |
| or | 布爾“或” |
| and | 布爾“與” |
| not x | 布爾“非” |
| in,not in | 成員測試 |
| is,is not | 同一性測試 |
| <,<=,>,>=,!=,== | 比較 |
| | | 按位或 |
| ^ | 按位異或 |
| & | 按位與 |
| <<,>> | 移位 |
| +,- | 加法與減法 |
| *,/,% | 乘法、除法與取余 |
| +x,-x | 正負號 |
| ~x | 按位翻轉 |
| ** | 指數 |
| x.attribute | 屬性參考 |
| x[index] | 下標 |
| x[index:index] | 尋址段 |
| f(arguments...) | 函數調用 |
| (experession,...) | 綁定或元組顯示 |
| [expression,...] | 列表顯示 |
| {key:datum,...} | 字典顯示 |
| 'expression,...' | 字符串轉換 |
上面的表格將python中用到的與運算符有關的都列出來了,是按照從低到高的順序列出的。
最后,要提及的是運算中的絕殺:括號()。只要有括號,就先計算括號里面的。
