整数类型:与数学中的整数的概念一致,可整可负,没有取值范围限制。
——pow(x,y)函数:计数x的y次方
python的整数提供了四种表示:
——十进制:1010,99,-217
——二进制,以0B或0b开头:0b101,-0B101
——八进制,以0o或0O开头:0o123,-0O456
——十六进制,以0x或0X开头:0x9a,-0X89
浮点类型:与数学中的实数概念一致
——带有小数点及小数的数字
——浮点取值范围和小数精度都存在限制,但常规计算可以忽略
——取值范围数量级为-10308至10308,精度数量级10^-16
注意:浮点数间运算存在不确定尾数,不是bug。
例如:
0.1+0.2
0.300000000000000040.1+0.2==0.3
False
遇到这种情况,可以使用round(x,d):对x四舍五入,d是小数截取位数。
round(0.1+0.2,1)==0.3
Ture
由于不确定位数一般发生在10^-16左右,所以浮点数间运算及比较用round()函数辅助十分有效。
浮点数可以采用科学计数发表示
——使用字母e或E作为幂的符号,以10为基数,格式如下:
e 表示a*10^b
——例如:4.3e-3值为0.0043 9.6E5 值960000
复数类型:在众多的编程语言中,只有python有复数类型,其与数数学中复数的概念一致。
z.real()获取复数的实部,z.imag()获得复数的虚部。
数字类型及操作符
x+=y即x=x+y x-=y即x=x-y x*=y即x=x*y x/=y即x=x/y x//=y即x=x//y x%=y即x=x%y
x**=y即x=x**y
注意:三种数据类型存在一种逐渐“扩展”或“变宽”的关系:
复数>浮点数>整数
不同的数据类型可以混合运算,生成结果为“最宽”类型
例如:123+4.0=127.0(整数+浮点数=浮点数)
python提供了一些内置的运算函数
abs(x),对x取绝对值
divmod(x,y),即(x//y,x%y),同时输出商和余,例如dibmod(10,3)结果为(3,1)
pow(x,y[,z]),即(x**y)%z,[…]表示参数z可以省略,例如pow(3,3,5)的结果为2
round(x[,d]),d是保留小数位数,默认值为0,例如round(-10.123,2)结果为-10.12
max(a,b,……,c)输出最大值,min()输出最小值
int(x)将x变成整数,float(x)将x变为浮点数,complex(x)将x变成复数,增加虚数部分。