关键字:类型,常量,运算符,浮点数误差,逻辑判断
数据类型
int整型float浮点型,对应C语言doublebool布尔型,值为true或falsetype数据的类型,type的type是type其他许多类型
常量(常数类型的值不可修改,pi可修改的例子下节课讲)
python内置
True真False假None空
math库中
pietauinf
常用内置运算符
- 算术:+, -, *, @(矩阵乘法), / (浮点除,结果为浮点数), //(整除,结果为整数), **(幂运算), %(mod,模运算或取余运算),-(一元运算,负号),+(正号)
- 关系:<, <=, >=, >, ==(等于), !=(不等于)
- 赋值: +=, -=, *=, /=, //=, **=, %=(先计算再赋值的简写)
- 逻辑:and与, or或, not非
类型影响语义
运算符的运作方式会受到运算数据的类型的影响
运算符优先级
优先顺序和结合律(人话就是先乘除后加减这样,以及小括号先算)
运算符优先级
python中**右结合
浮点数误差
来自于进制转换的误差和进制本身的误差(二进制如何转十进制?二进制如何表示0.3) (解决方法见拓展知识第五条)
短路求值
and:遇见一个false就直接返回flase(短路)or: 遇见一个true就直接返回true
拓展知识
- 机器学习两大任务是分类与回归;
- 一文读懂浮点数 - 知乎 (zhihu.com));
- Modulo - Wikipedia;
- Python 海象运算符 - 知乎 (zhihu.com);
- Python如何计算解决精度问题 | PingCode智库;
isinstance()比type()更具有稳健性,如*type()判定int or float不能表示所有数字,无法判断复数,而isinstance可以*。