Python语言中包含三种数字类型
- 整数类型
- 浮点数类型
- 复数类型
整数类型
- 与数学中的整数概念一致,没有取值范围限制。
- 整数类型有四种表示形式:
十进制:1010,99,-217
十六进制:0x9a,-0x89(以0x,0X开头)
二进制:0b010,-0B010(以0b,0B开头)
八进制:0o123,0O456(以0o,0O开头)
浮点数类型
- 与数学中实数的概念一直,指带有小数点及小数的数字。
- Python中浮点数的数值范围存在限制,但常规计算可忽略。
- 取值范围数量级约为-10308至10308(与计算机系统有关)
,精度数量级为10-16。
查看浮点数精度:
import sys
sys.float_info
科学计数法:使用‘e’或者‘E’作为幂符号,以10为基数。例如(a)e(b) = a*10b
浮点数的不确定尾数问题:
- 浮点数运算存在不确定尾数,不是bug。
- Python中用53位二进制表示小数部分,约10-16。由于二进制与十进制之间并不是完全对等的关系,因此在转换时会出现不确定尾数,大概在第16位小数。
- 可以使用round(x,d)函数进行四舍五入,保证浮点数的计算精度。
复数类型
- 与数学中的概念一致,z = a +bj,a是实数部分,b是虚数部分,a、b都是浮点数,虚数部分用j或J表示。
z.real
获得实数部分z.imag
获得虚数部分
数值运算操作符
一元运算操作符
操作符及使用 | 描述 |
---|---|
x + y | 加,x与y之和 |
x - y | 减,x与y之差 |
x * y | 积,x与y之积 |
x / y | 除,x与y之商 10/3的结果为3.3333333 |
x // y | 整除,x与y的整数商 10//3的结果为3 |
+ x | x本身 |
- y | y的负值 |
x % y | 余数,模运算 10%3 = 1 |
x ** y | 幂运算,x的y次幂 |
二元运算操作符
x op == y | 即x = x op y,其中op为二元操作符 |
x += y;x-=y;x*=y;x/=y;x//=y;x%=y;x**=y |
数值运算函数
函数及使用 | 描述 |
---|---|
abs(x) | 绝对值,x的绝对值。abs(-10.1) 结果为10.1 |
divmod(x) | 商余,(x//y,x%y) ,同时输出商数和余数 |
pow(x,y[,z] ) | 幂余,(x**y)%z |
round(x[,d]) | 四舍五入,d是保留的小数,默认为0 |
max(x1,x2,…,xn) | 返回最大值 |
int(x) | 将x变成整数,舍弃小数部分。 |
float(x) | 将x变成浮点数,增加小数部分。 |
complex(x) | 将x变成复数,增加虚数部分。 |
数值类型混合计算
- 三种类型存在一种扩展关系: 整数–>浮点数–>复数 (整数是浮点数的特例,浮点数是复数的特例。)
- 不同数字类型间可以进行混合运算,运算后生成结果最宽的类型。
- 例如123+4.0=127.0(整数+浮点数=浮点数)
来源:CSDN
作者:圻子-
链接:https://blog.csdn.net/weixin_44507435/article/details/104746362