在Python中所有的数据类型都是类,每个数据值都是类的“实例”。在Python中有6种主要的内置数据类型:数字、字符串、列表、元组、集合和字典。列表、元组、集合和字典可以容纳多项数据,把它们统称为容器类型的数据。
(一)数字类型分类
存储数字,不可变。
>>> 2929>>> type(29)<class 'int'># >>>0b11101 # 二进制表示方式,以阿拉伯数字0与英文字母B(或b)作为前缀29>>>0O35 # 八进制表示方式,以阿拉伯数字0与英文字母o(或O)作为前缀29>>> 0X1d # 十六进制表示方式,以阿拉伯数字0与英文字母X(或x)作为前缀29
- float:浮点类型(小数),主要用来存储小数数值,Python只支持双精度浮点类型,而且是与本机相关的。
>>> 2.92.9>>>0.0 0.0>>> type(0.0)<class 'float'>>>>3.36e2336.0>>> 1.56e-20.0156
整数和浮点数(小数)在数学中被统称为实数。与实数对应的是复数,复数在数学中被表示为a+bi,其中a被称为实部,b被称为虚部,i被称为虚数的单位。复数在数学、物理学和电气工程等方面应用广泛,例如向量就可以使用复数表表示。>>> 1+2j(1+2j)>>>(1+2j)+(1+2j)(2+4j)>>>c=3+4j>>>type(c)<class 'complex'>
- bool:布尔类型,是int的子类,它只有两个值:True和False。任何类型的数据都可以通过bool()函数转换为布尔值,那些被认为“没有”的“空的”值会被转换为False,反之被转换为True。
>>>bool(0)False>>>bool(2)True>>>bool('')False>>>bool(' ')True>>>bool([])False>>> bool({})False
(二)数字类型的相互转换
在Python的数字类型中,除复数外,其他三种数字类型如整数、浮点数和布尔值都可以相互转换,分为隐式类型转换和显式类型转换。
1.隐式类型转换
数字之间可以进行数学计算,在进行数学计算时若数字类型不同, 则会发生隐式类型的转换。
>>> a = 1+True>>> a2>>>a = 1.0 +1>>>a2.0>>>a=1.0+True>>>a2.0>>>a=1.0+1+True>>>a3.0
2.显示类型转换
除复数外,三种数字类型如整数、浮点和布尔都有自己的转换函数,分别是int()、float()和bool()函数。
>>> int(False)0>>>int(0.7)0>>>float(6)6.0>>>float(True)1.0