-
数字类型分为3类:整数、浮点数和复数;另外布尔是整数的子类
-
整数:
-
无精度限制
-
纯数字的字面量(包括hex、oct、bin的进制数)生成整数
-
浮点数:
-
有精度限制,这取决于你运行的机器,获取信息 “sys.float_info”
-
浮点数包含小数点或指数符号E或e
-
复数:
-
假如复数z,则实部为z.real,虚部为z.imag
-
复数包含“j”或“J”
-
标准库还提供了额外的数字类型:
-
fractions 有理数
-
decimal 可自定义精度的浮点数
-
Python支持混合算术运算,“较窄”的数会被扩展为“较宽”的数
-
复数 > 浮点数 > 整数
-
混合类型的数字比较遵循相同规则,因此 1 == 1.0 是True
-
操作数(除复数外):
-
基本运算符:“+”、“-”、“*”、“/”、“//”、“%”;优先级高于比较运算符
-
函数:
-
abs(x) 绝对值
-
int(x, base=10) 构造函数,转为整数
-
float(x) 构造函数,转为浮点数
-
complex(re, im) 构造函数,转为复数
-
c.conjugate() 复数c的共轭复数
-
divmod(x, y) 商,余
-
pow(x, y) 幂运算
-
x ** y
-
注意:
-
涉及将整数分开,结果指向负无穷:1 // 2 = 0;-1 // 2 = 1
-
复数无法求余数
-
浮点数转为整数将被截断浮点;可使用定义明确的“math.floor()”、“math.ceil()”
-
pow(0, 0) = 0 ** 0 = 1
-
数字的字面量接受数字0-9或其他Unicode环境