您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關關于Python運算符優先級的說明的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
所有的數學運算都是從左向右進行的,Python 語言中的大部分運算符也是從左向右結合的,只有單目運算符、賦值運算符和三目運算符例外,它們是從右向左結合的,也就是說,它們是從右向左運算的。
乘法和加法是兩個可結合的運算符,也就是說,這兩個運算符左右兩邊的操作數可以互換位置而不會影響結果。
運算符有不同的優先級,所謂優先級就是在表達式運算中的運算順序。下表中列出了包括分隔符在內的所有運算符的優先級順序。
運算符說明 | Python運算符 | 優先級 |
---|---|---|
索引運算符 | 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 |
根據表中運算符的優先級,我們分析 4+4<<2 語句的執行結果。程序先執行 4+4 得到結果 8,再執行 8<<2 得到 32。如果使用“()”就可以改變程序的執行順序,比如 4+(4<<2),則先執行 4<<2 得到結果16,再執行 4+16 得到 20。
雖然 Python 運算符存在優先級的關系,但并不推薦過度依賴運算符的優先級,因為這會導致程序的可讀性降低。因此,在這里要提醒讀者:
不要把一個表達式寫得過于復雜,如果一個表達式過于復雜,則把它分成幾步來完成。
不要過多地依賴運算符的優先級來控制表達式的執行順序,這樣可讀性太差,應盡量使用“()”來控制表達式的執行順序。
感謝各位的閱讀!關于關于Python運算符優先級的說明就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。