新聞中心
所有的數(shù)學(xué)運算都是從左向右進行的,Python 語言中的大部分運算符也是從左向右結(jié)合的,只有單目運算符、賦值運算符和三目運算符例外,它們是從右向左結(jié)合的,也就是說,它們是從右向左運算的。

創(chuàng)新互聯(lián)建站專注于衡南企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站建設(shè),商城網(wǎng)站定制開發(fā)。衡南網(wǎng)站建設(shè)公司,為衡南等地區(qū)提供建站服務(wù)。全流程定制開發(fā),專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)
乘法和加法是兩個可結(jié)合的運算符,也就是說,這兩個運算符左右兩邊的操作數(shù)可以互換位置而不會影響結(jié)果。
運算符有不同的優(yōu)先級,所謂優(yōu)先級就是在表達式運算中的運算順序。下表中列出了包括分隔符在內(nèi)的所有運算符的優(yōu)先級順序。
| 運算符說明 | Python運算符 | 優(yōu)先級 |
|---|---|---|
| 索引運算符 | x[index]或x[index:index2[:index3]] | 18、19 |
| 屬性訪問 | x.attrbute | 17 |
| 乘方 | ** | 16 |
| 按位取反 | ~ | 15 |
| 符號運算符 | +或- | 14 |
| 乘、除 | *、/、//、% | 13 |
| 加、減 | +、- | 12 |
| 位移 | >>、<< | 11 |
| 按位與 | & | 10 |
| 按位異或 | ^ | 9 |
| 按位或 | | | 8 |
| 比較運算符 | ==、!=、>、>=、<、<= | 7 |
| is運算符 | is、is not | 6 |
| in運算符 | in、not in | 5 |
| 邏輯非 | not | 4 |
| 邏輯與 | and | 3 |
| 邏輯或 | or | 2 |
根據(jù)表中運算符的優(yōu)先級,我們分析 4+4<<2 語句的執(zhí)行結(jié)果。程序先執(zhí)行 4+4 得到結(jié)果 8,再執(zhí)行 8<<2 得到 32。如果使用“()”就可以改變程序的執(zhí)行順序,比如 4+(4<<2),則先執(zhí)行 4<<2 得到結(jié)果16,再執(zhí)行 4+16 得到 20。
雖然 Python 運算符存在優(yōu)先級的關(guān)系,但并不推薦過度依賴運算符的優(yōu)先級,因為這會導(dǎo)致程序的可讀性降低。因此,在這里要提醒讀者:
不要把一個表達式寫得過于復(fù)雜,如果一個表達式過于復(fù)雜,則把它分成幾步來完成。
不要過多地依賴運算符的優(yōu)先級來控制表達式的執(zhí)行順序,這樣可讀性太差,應(yīng)盡量使用“()”來控制表達式的執(zhí)行順序。
網(wǎng)站名稱:創(chuàng)新互聯(lián)Python教程:Python運算符優(yōu)先級
本文URL:http://m.5511xx.com/article/djhddip.html


咨詢
建站咨詢
