三、Python的数据类型
3.1 python的基本数据类型
特点:
表示单一的、原子性的数据。
不可再分,是语言内建的最基本的数据类型。
存储的是简单的数值、字符、布尔值等。
在内存中通常占据固定大小的空间。
Python提供了整数、浮点数和复数三种数字类型和一种字符串类型。
3.1.1 整数(int)
在Python中,整数是一种基本的数据类型,用于表示整数值。
计算机中经常用4种进制表示整型:二进制、八进制、十进制、十六进制。默认是十进制,如果要用其他进制表示,需要在前面加上引导符号。
二进制:以0b或0B开头
八进制:以0o或0O开头
十六进制:以0x或0X开头
(1)不同进制相互转换
bin()、oct()、hex()、int()
a=10
print('a的二进制为',bin(a))
print('a的八进制为',oct(a))
print('a的十六进制为',hex(a))
print('二进制101的整数值为',int('101',2))
运行结果如下:
(2)整数的表示
使用整数直接写出,例如:23
可以进行基本的算术运算,加减乘除
x=23
y=-10
result=x+y
print(result)
运行结果:
(3)整数的类型
使用type()函数可以确定一个对象的类型。
(4)整数的范围
Python中整数的表示没有固定的限制,可以表示很大或很小的整数值。Python中整型数据的长度不受机器字长的影响,它的取值范围只与计算机的内存有关。
3.1.2 浮点数(float)
在Python中,浮点数是一种用于表示带有小数点的数值的数据类型。
Python的浮点数一般由十进制表示,由整数和小数部分组成。
对于非常大或非常小的浮点数都可以用科学计数法表示,如0.00000051可以表示为5.1E-7。
(1)浮点数的类型
使用type()函数可以确定一个对象的类型。
(2)浮点数的运算
浮点数可以进行基本的算术运算,加减乘除
(3)浮点数的精度
Python中的浮点数是双精度的,每个浮点数占8个字节(64位),52位存储尾数,11位存储阶码,1位存储符号,所以浮点数的取值范围是-1.8E308~1.8E308。超出这个范围将视作无穷大或者无穷小。
Python中最长可以输出浮点数为17位数字,但是计算机只能保证15位数字的精度,对于超出17位的浮点数会产生截断,一旦截断,就会产生误差。
x=0.1+0.2
print(x)
运行结果:
因为0.1和0.2在二进制中表示是无限循环的小数。
一种解决方法:
x=0.1+0.2
rounded_result = round(x,2)
print(rounded_result)
运行结果:
3.1.3 复数(complex)
格式为2+4j和5.6+7.9j这样的数据称为复数,一个复数由实部和虚部两部分组成,实部是一个实数,虚部是一个实数加j或J组成,虚部不能单独存在。
获取一个复数实部的方法是调用属性real,获取虚部的方法是调用属性imag。
(1)复数的表示
使用complex()函数或直接写出形如a+bj的表达式,其中a是实部,b是虚部,而J是虚数单位,满足j²=-1.
a=complex(2,4)
b=6
print(a)
print('a的实部是:',a.real,'a的虚部是:',a.imag)
print(complex(b))
运行结果:
(2)复数的类型
使用type()函数可以确定一个对象的类型
(3)复数的运算
复数支持基本的算术运算,加减乘除