参考《数据结构与算法 Python语言实现》
python的数字类型有 int float str,这些和我们在java,c++中理解的基本数字类型不一样!!!
1、int float bool str list tuple dict都是类
2、int float bool str tuple是不可变的类,list dict是可变的类
int类
1)python会根据值的大小自动选择int内部的表示方式,去别c++中 int short long
import sys
a = 123456789
b = 123456789123456
print(sys.getsizeof(a))
print(sys.getsizeof(b))
输出:28 32
2) 方便使用二进制,八进制,十进制,十六进制
a = 0b10
b = 0o10
c = 0x10
print(a,b,c)
输出:2 8 16
3)int类作数据转换
print(int('10')) #10进制字符串 ==》 10进制数
print(int('1f',16)) #16进制字符串 ==》 10进制数,默认10进制
print(int(3.9))
无法对
'hello' 这种字符串、[1.0,5.2,30.1]列表
进行数据转换
输出:10 31 3
float类
1) 固定内存大小
a = 1.2
b = 1.23333333333333
c = 5555555555555555555555551.25666666666666666666666666666666
print(sys.getsizeof(a))
print(sys.getsizeof(b))
print(sys.getsizeof(c))
输出:24 24 24
2)末尾零可选
a = 1.0
b = 1.
print(a,b)
输出:1.0 1.0
3)科学计数法
a = 6.022e23
b = 15.2e-20
print(a,b)
输出:6.022e+23 1.52e-19
bool类
1)bool()默认返回False
2) bool(参数),int,float,非零为True;列表和字符串,字典,非空为True,否则为False