算术运算符
包含+ - * / % ** //
- 先算乘方,然后是乘除, 最后算加减
- 如果运算过程中想修改默认的运算顺序,就需要加上()
- 在Python 中,0不能作为除数
有些编程语言中,除以整数 0 也是会抛出异常,除以浮点数 0 会得到 无穷大
而 Python 都认为是除 0 异常

这种运行时出现的错误,也叫做"抛出异常"
如果程序运行过程中 抛出异常,程序直接就终止了~,异常后面的代码也就不会执行到了
- 在 Python 中整数除以整数,结果可能是小数
- % 求余数
- ** 进行乘方运算——既能够支持整数次方,也支持小数次方.(开方运算)
- // 地板除法(取整除法),会针对计算的结果进行"向下取整"
7 // 2 ==> 3
-7 // 2 ==> -4
关系运算符
关系运算符就是在比较两个操作数之间的"大小""相等"这样的关系
包含< <= > >= == !=
-
关系运算符对应的表达式值是布尔类型——表达式符合要求为真.不符合要求为假

-
关系运算不光可以针对数字进行比较,还能够比较字符串

字典序!
在英文词典上,单词是按照一定的顺序来排列的,先看首字母在字母表上的顺序,谁小,谁就排在前面,如果首字母相同,依次比较第二个字母,第三个字母
- 针对中文进行字符串大小比较,是没有意义的,至少按照默认的字典序来说,是没意义的!
在计算机里,表示中文,其实是用多个字节构成的一个比较大的数字来进行比较
- 针对浮点数来说,使用 == 比较相等,存在一定的风险
因为 浮点数在内存中的存储和表示,是可能存在误差的!!这样的误差在进行算术运算的时候就可能被放大,从而导致 == 的判定出现误判

虽然这两个数字已经非常非常接近了,但是如果直接使用 == 进行比较,仍然会出现 False 的情况
正确的比较浮点数相等:作差,看差值是否小于预期的误差范围

逻辑运算符
包含and or not
- and并且——两侧操作数均为 True,表达式的值为 True否则为 False (一假则假)
- or或者——两侧操作数均为 False,表达式的值为 False否则为 True (一真则真)
- not逻辑取反——只有一个操作数.操作数为 True, 则返回 False,为 False 则返回 True
逻辑运算符中的重要细节: 短路求值
对于 and 操作来说,如果左侧表达式为 False,那么整体的值一定是 False,右侧表达式不必求值!
对于 or 操作来说, 如果左侧表达式为 True, 那么整体的值一定是 True,右侧表达式不必求值!
赋值运算符
= 表示赋值.意思就是把 右侧的值 填充到 左侧的空间 中
==表示比较相等
a = 10将10赋给a
a = b = 10将10分别赋给a和b
a, b = 10, 20将10赋给a,将20赋给b(多元赋值直接一步到位交换a, b = b, a)
a = a + 1等价于a += 1
Python 中不支持 ++ – 这样的自增自减操作的
++a 之所以没有语法报错,是 Python 解释器把 +当成了正号也是不会报错
–a把-当成了负号.负负得正,最终的值仍然不变

443

被折叠的 条评论
为什么被折叠?



