学习Python,先要理解数据类型——就像我们在解决数学题的时候,要知道常量、变量、数位和幂一样,计算机在处理问题时也要搞懂这个数据是怎么一回事,这就是数据类型。
由于计算机只能读取二进制的特性,我们不能按照日常生活中逢十进一的规则去表示数据,而是选用不同长度的“字节”去表达,这里的字节指的是计算机中数据处理的基本单位,一般由8个二进制数组成。
Python中常用的数据类型共6种,分别是数字(Numbers)、字符串(String)、列表(List)、元组(Tuple)、字典(Dictionary)、集合(Set)。我们先来介绍第一种——数字。
数字中包括了4种子数据类型,
- int(整型)
- bool(布尔值)
- float(浮点型)
- complex(复数)
int
即整数,不含小数点,和浮点型相对,我们在程序中随机输入一个整数,可以通过print函数进行输出,并查看它的数据类型和占用内存。
import sys
a = 10
print(a, type(a), sys.getsizeof(a))
这里有一点需要注意,代码中的import sys是调用了sys这个库,而sys.getsizeof是调用了这个库里的getsizeof函数,这些内容会在之后的文章中提及。
当我们想到看到输出结果时就可以使用print函数,它的作用是将获取到的数据输出,方便我们进行研究和纠错。这里我们将10赋给了a,print(a)就能查看计算中10这个数据的属性了。
结果如图所示,类型为整形,占用了28个字节。
bool
布尔值是“真” True 或“假” False 中的一个,在数字语言中也常用 1 和 0表示。
import sys
a = 10
b = 11
print(a==b, type(a==b), sys.getsizeof(a==b))
这里使用了“==”表示相等的意思,而我们给a和b赋予了不同的数值,那么a==b就是假命题了,所以输出类型为布尔值,占用了24个字节。
特别指出一点,除了可以用来判断命题的真假外,也能够用bool(a)的形式判断数据是否等于0.如果是0则会输出false,反之则是true。
import sys
a = bool(2)
print(a, type(a), sys.getsizeof(a))
b = bool(0)
print(b, type(b), sys.getsizeof(b))
c = bool(-1)
print(c, type(c), sys.getsizeof(c))
这里我们还能发现,0和1两类布尔值占用的内存是不一样的。
float
浮点型,也就是我们常说的小数,在日常生活中很多计算结果都不是整数,这里就需要浮点型数据来进行表达。
import sys
a = 10
b = 11
c = a/b
print(c, type(c), sys.getsizeof(c))
我们也可以通过赋予一个包含小数点的数值来创建浮点型数据,另外如果我们想让一个整数表示成x.0的形式,可以在数字前加上float,它就会从一个整型数据变为一个浮点型数据。
import sys
c = 10.1
print(c, type(c), sys.getsizeof(c))
d = float(10)
print(d, type(d), sys.getsizeof(d))
得到的输出类型为浮点型,占用内存24个字节
complex
复数和生活中的表达方式一样,都是a+bj的形式,同理如果想要将一个实数表达成复数x+0j的形式,可以在前面加上complex。
import sys
c = 2+2j
print(c, type(c), sys.getsizeof(c))
d = complex(10)
print(d, type(d), sys.getsizeof(d))
结果为复数类型,占用内存32个字节。
以上就是Python中所有的数字数据类型了,那么今天的分享暂时告一段落,后面会和大家一起继续研究其他数据类型。