一:数字类型概述
数字提供了标量存储和直接访问,属于不可变数据类型,所谓不可变,我们可以认为,更改数字的值会生成一个新的对象
# id可以唯一表示一个对象age =18print(id(age))# 结果:1777972832age = 19print(id(age))# 结果:1777972864
数字类型的完整工具
1: 整数和浮点数
2:复数
3:固定精度的十进制数
4:有理分数
5:集合
6:布尔类型
7:无穷的整数精度
8:各种数字内置函数和模块
: 整型,布尔型,浮点型,复数
数字类型的创建
变量名 = 数字
a = 18b = 1.5c = 5 + 6j
整数和浮点数常量
整数以十进制数字的字符串写法出现,浮点数带一个小数点,也可以加上一个科学技术标志e或者E。
十六进制数,八进制数,二进制数常量
整数可以编写为十进制数(以10为基数),十六进制数(以16为基数),八进制数(以8为基数),二进制数(以2为基数)。
十六进制数以0x或0X开始,后面接十六进制的数字0-9和A-F,
八进制数以0o或者0O开头,后面接0-7的数字
二进制数以0b或者0B开头,后面接着0-1的数字
内置函数hex,oct,bin可以将一个整数转换为三种进制表示的字符串,
虚数:
对于复数有以下几个概念
1:虚数不能单独存在
2:复数有实部和虚部组成 real + imagj
3: 实部和虚部都是浮点型
4:虚部以j或者J结尾
5:共轭复数 num.conjugate()
二:数字类型相关操作
2.1 标准类型操作符
a = 5b = 7c = 8print(a>b)print(a == b)print(a < b)print(ab
2.2 算数操作符
- + 加法
- - 减法
- * 乘法
- / 除法
- // 地板除
- % 取余
- ** 幂运算
加法
print(1+2)print(1+2+3)
减法
print(1-2)print(1-2-3)
乘法
print(1*2)print(1*2*3)
除法
print(1/2)print(1/3)# 0.5# 0.3333333333333333
地板除 ---取比商小的最大整数
print(1//2)print(4//3)
# 0
# 1
取余
print(1%2)print(6%3)# 1# 0
幂运算
print(1**2)print(2**2)# 1# 4
对于复数有以下几个概念
1:虚数不能单独存在
2:复数有实部和虚部组成 real + imagj
3: 实部和虚部都是浮点型
4:虚部以j或者J结尾
5:共轭复数 num.conjugate()
# 输出复数a的实部和虚部a = 5 + 6jprint(a.real,a.imag)# 5.0 6.0输出a的共轭复数print(a.conjugate())# (5-6j)
数字相关的内置方法:
1:bit_length
# 用二进制表示自身所需的位数
a=8ret = a.bit_length()print(ret)