主要内容 #
- 了解优先级的概念
- 熟悉运算符的优先级
1. 优先级的概念 #
在编程当中,运算符也是有优先级的。 一个表达式中可能会包含多种不同的运算, 这些运算只有按一定的顺序进行结合,才能保证运算的合理性和结果的正确性、以及唯一性。 优先级高的运算符先结合,优先级低的运算符后结合。 相同优先级中,大多数运算符的结合性是从左到右。 只有三个优先级是从右至左结合,它们是单目运算符、条件运算符、以及赋值运算符。2. 运算符的优先级 #
以下表格列出了运算符的优先级,优先级数字越高,表示优先级越高。 比如:小括号的优先级是最高的,凡是有小括号的,必须优先对小括号里的内容进行运算。运算符说明 | Python运算符 | 优先级 |
---|---|---|
小括号 | () | 9 |
幂 | ** | 8 |
乘除 | * / // % | 7 |
加减 | + – | 6 |
比较运算符 | == != > >= < <= | 5 |
逻辑非 | not | 4 |
逻辑与 | and | 3 |
逻辑或 | or | 2 |
赋值运算符 | = %= /= //= += -= *= **= | 1 |
print(2+3*4/6) print(3+10-6/2*2)先计算小括号里的式子,再计算乘除,最后加减
a = (2+3)*4/6 print(a) b = 3+(10-6)/2*2 print(b)运行以下程序,体会运算符的优先级:
print(16/2**3) print(2+2 == 2*2) print(2**2 > 4) print(2**2 >= 4) print(5 > 2 and 6 < 4) print(5 > 2 or 6 < 4) print(not False and 5>2)
3. 小结 #
习题 #
- 运行以下程序,并查看结果。
- 修改以下代码,将计算c变量的优先级最高的运算用括号括起来,再次运行,修改后的结果与修改前的结果要求一至。
a = float(input('请输入a: ')) b = float(input('请输入b: ')) c = a/b**2 print('c=',c) c = a > b and c != b print('c=',c)
OJ训练题 #
1、【入门】输入一个三位数,把个位和百位对调后输出 – ★
2、【入门】四位数的和 – ★
3、【入门】两位数运算 – ★
4、【入门】求花坛的面积 – ★★
5、【入门】扩建花圃 – ★★★