AI
人工智能
016 数字类型及操作
一、概述
整数类型
浮点数类型
复数类型
数值运算操作符
数值运算函数
二、整数类型
与数学中整数的概念一致
可正可负,没有取值范围限制
pow(x,y)函数:计算 (x^y),想算多大算多大pow(2, 10) # 1024
pow(2, pow(2, 5)) # 4294967296
2.1 4种进制表示形式
十进制:1010, 99, -217
二进制,以0b或0B开头:0b010, -0B101
八进制,以0o或0O开头:0o123, -0O456
十六进制,以0x或0X开头:0x9a, -0X89
关于Python整数,就需要知道这些:
整数无限制 pow()
4种进制表示形式
三、浮点数类型
与数学中实数的概念一致
带有小数点及小数的数字
浮点数取值范围和小数精度都存在限制,但常规计算可忽略
取值范围数量级约(-10^{308})至(10^{308}),精度数量级(10^{-16})
浮点数间运算存在不确定尾数,不是bug
0.1 + 0.3 # 0.4
0.1 + 0.2 # 0.30000000000000004
0.1:53位二进制表示小数部分,约(10^{-16})
0.00011001100110011001100110011001100110011001100110011010 (二进制表示)
0.1000000000000000055511151231257827021181583404541015625 (十进制表示)
二进制表示小数,可以无限接近,但不完全相同
0.1 + 0.2:结果无限接近0.3,但可能存在尾数
0.1 + 0.2 == 0.3 # False
round(0.1+0.2, 1) == 0.3 # True
3.1 round()函数
round(x, d):对x四舍五入,d是小数截取位数
浮点数间运算及比较用round()函数辅助
不确定尾数一般发生在(10^{16})左右,round()
3.2 科学计数法表示浮点数
使用字母e或E作为幂的符号,以10为基数,格式如下:e,表示 a*10b
例如:4.3e-3 值为0.0043,9.6E5 值为 960000.0
关于Python浮点数,需要知道多些。
取值范围和精度基本无限制
运算存在不确定尾数 round()
科学计数法表示
四、复数类型
与数学中复数的概念一致
如果(x^2) = -1,那么x的值什么?
定义 j = −1 ,以此为基础,构建数学体系
a+bj 被称为复数,其中,a是实部,b是虚部
4.1 复数实例
z = 1.23e-4+5.6e+89j
实部是什么?z.real 获得实部
虚部是什么?z.imag 获得虚部
五、数值运算操作符
5.1 一元操作符
操作符是完成运算的一种符号体系
操作符及使用
描述x+y
加,x与y之和
x-y
减,x与y之差
x*y
乘,x与y之积
x / y
除,x与y之商 10/3 结果是3.3333333333333335
x // y
整数除,x与y之整数商 10//3 结果是3
+ x
x本身
- y
x的负值
x % y
余数,模运算,10%3 结果是1
x ** y
幂运算,x的y次幂,(x^y),当y是小数时,开放运算,10**0.5结果是(sqrt{10})
5.2 二元操作符
二元操作符有对应的增强赋值操作符
增强操作符及使用
描述x op= y
即 x = x op y,其中,op为二元操作符
二元操作符有以下这些:x += y, x -= y, x *= y, x /= y, x // y, x %= y, x **= y
x = 3.1415
x **= 3 # 与 x = x **3 等价 # 31.003533398375005
5.3 数字类型的关系
类型间可进行混合运算,生成结果为"最宽"类型
三种类型存在一种逐渐"扩展"或"变宽"的关系:整数 -> 浮点数 -> 复数
例如:123 + 4.0 = 127.0 (整数+浮点数 = 浮点数)
六、数值运算函数
一些以函数形式提供的数值运算功能
函数及使用
描述abs(x)
绝对值,x的绝对值,abs(-10.01) 结果为 10.01
divmod(x,y)
商余,(x//y, x%y),同时输出商和余数,divmod(10, 3) 结果为 (3, 1)
pow(x, y[, z])
幂余,(x**y)%z,[..]表示参数z可省略,pow(3, pow(3, 99), 10000) 结果为 4587
round(x[, d])
四舍五入,d是保留小数位数,默认值为0,round(-10.123, 2) 结果为 -10.12
max((x_1,x_2,cdots,x_n))
最大值,返回(x_1,x_2,cdots,x_n)中的最大值,n不限,max(1, 9, 5, 4 3) 结果为 9
min((x_1,x_2,cdots,x_n))
最小值,返回(x_1,x_2,cdots,x_n)中的最小值,n不限,min(1, 9, 5, 4 3) 结果为 1
int(x)
将x变成整数,舍弃小数部分,int(123.45) 结果为123; int("123") 结果为123
float(x)
将x变成浮点数,增加小数部分,float(12) 结果为12.0; float("1.23") 结果为1.23
complex(x)
将x变成复数,增加虚数部分,complex(4) 结果为 4 + 0j
七、小结
整数类型的无限范围及4种进制表示
浮点数类型的近似无限范围、小尾数及科学计数法
+、-、*、/、//、%、**、二元增强赋值操作符
abs()、divmod()、pow()、round()、max()、min()
int()、float()、complex()
内容来源于网络,如有侵权请联系客服删除