Python運算符優先級規則
當一個表達式中出現多個運算符時,求值順序依賴於優先級規則。對數學操作符,Python遵守數學傳統規則。縮寫爲PEMDAS,可以幫助
記憶這些規則。
括號
括號(P, Parenttheses)擁有最高優先級。並可以用來強制表達式按照你需要的順序進行求值。因爲括號中表達式會先執行,所以
2*(3-1)的值是4,而(1+1)**(5-2)的結果是8。
乘方
乘方(E, Exponentiation)擁有次高優先級,所以1+2**3的結果是9而不是27
乘法和除法
乘法(M,Multiplication)和除法(D,Division)優先級相同,並且高於優先級相同的加法(A,Addition)和減法
(S,Substraction)。所以2*3-1是5,而不是4,6+4/2結果是8而不是5。
相同優先級的運算符執行順序
優先級相同的操作按照從左向右順序求值。