下表列出了从最高优先级到最低优先级的所有运算符。
序号 | 运算符和说明 |
---|---|
1 | ** 求幂(提高幂) |
2 | 〜+- 补码,一元加号和减号(最后两个的方法名称为+ @和-@) |
3 | * /%// 乘法,除法,模和底除 |
4 | +- 加减法 |
5 | >> << 左右位移 |
6 | & 按位'AND'td> |
7 | ^ | 按位异或“ OR”和常规“ OR” |
8 | <= <>> = 比较运算符p > |
9 | <> ==!=等于 运算符 |
10 | =%= / = // =-= + = * = ** = 赋值运算符 |
11 | 是不是 不是 |
12 | 在非 会员运算符中 |
13 | 不是或与 逻辑运算符 |
运算符优先级会影响表达式的求值方式。
例如,x = 7 + 3 * 2; 在这里,x被赋值为13,而不是20,因为运算符*的优先级比+高,因此它先乘以3 * 2,然后加到7。
在此,优先级最高的运算符出现在表格的顶部,优先级最低的运算符出现在表格的底部。
#!/usr/bin/python a = 20 b = 10 c = 15 d = 5 e = 0 e = (a + b) * c / d #( 30 * 15 ) / 5 print "Value of (a + b) * c / d is ", e e = ((a + b) * c) / d # (30 * 15 ) / 5 print "Value of ((a + b) * c) / d is ", e e = (a + b) * (c / d); # (30) * (15/5) print "Value of (a + b) * (c / d) is ", e e = a + (b * c) / d; # 20 + (150/5) print "Value of a + (b * c) / d is ", e
输出结果
当您执行上述程序时,它将产生以下结果-
Value of (a + b) * c / d is 90 Value of ((a + b) * c) / d is 90 Value of (a + b) * (c / d) is 90 Value of a + (b * c) / d is 50