在上一篇文章 01 Python 的安装与初体验 中,我们介绍了 Python 本身,Python 的安装,Python 的简单使用,第三方模块的安装与使用以及简单的输入和输出等。在最后,我们涉及到一个重要的概念——数据类型。数据类型在编程是一个很重要的概念,我们几乎所有的编程工作都是在创建各种各样类型的数据,然后对它们进行操作或者计算,最后得出结果。数据类型定义了数据的取值范围,可以进行的操作等。例如在 Python 中,整数类型的取值范围仅仅受限于你的计算机;整数类型可以进行的操作有加、减、乘、除等等。
在 Python 中,当我们提到某一种数据类型时,我们应当马上对应想到其取值范围,可以进行的操作(或者说是计算)。数据类型还决定了该种数据类型的数据在计算机中的存储方式,在代码中的表示方法等等。
Python 为我们提供了很多内置的数据类型,我们无需做其他任何工作(例如导入),就能使用。常用的 Python 内置的类型如下表所示(完整的列表请参见 Python 内置帮助文档 Built-in Types):
内置数据类型分类 | 具体类型 | 备注 |
---|---|---|
布尔类型(Boolean Type) | bool | |
数字类型(Numeric Types) | int, float, complex | |
序列类型(Sequence Types) | list, tuple | |
文本序列(Text Sequence Type) | str | |
映射类型(Mapping Types) | dict |
我们这一个部分概览一下上面这些数据类型,我们在介绍的时候,会介绍该种数据类型的取值范围,如何在代码中编写该种类型的数据,以及该种数据类型的数据可以进行的操作等。
布尔类型
布尔类型的数据的取值只有两种——True 和 False。True 表示真,False 表示假。我们在代码中直接写 True 和 False 就表示布尔类型的数据:
a = True # a 变量存储了布尔类型的数据 True
b = False
布尔类型的值可以进行的操作有三种——and,or 和 not。
a = True
b = False
c = a and b # c 的值是 False
d = a or b # d 的值是 True
e = not a # e 的值是 False
f = not b # f 的值是 True
and
是“并且” 的意思,两个布尔类型的数据进行 and
运算,只有它们两个都是 True
,值才是 True
,否则为 False
。
or
是“或者”的意思,两个布尔类型的数据进行 or
运算,只要它们两个中的某一个值为 True
,值都为 True
,否则为 False
。
not
是“非”的意思,一个布尔类型的数据做 not
运算,那么 True
将变为 False
;False
将变为 True
。
布尔类型的数据主要用来测试某个条件是真还是假,然后根据测试结果的真假进行不同的操作。例如,如果测试条件为真,那么执行这块代码,否则执行那块代码;又或者测试条件为真,那么重复执行某个代码,否则不重复执行。
数字类型
数字类型又可以细分为整数类型(int),小数类型(float),复数类型(complex)。我们不讲复数类型。
int 类型的数据的取值范围仅仅受限于你的计算机硬件。当我们在代码中以我们熟悉的十进制书写数字时,我们将创建了 int 类型的数据,例如2, 3, 5, 100, 100000000等等。我们也可以存储任意大小的小数(取决于你的计算机硬件),例如 3.14, 3000000000.123等等。
a = 10 # 把10这个数据存在a变量中
b = 20
c = 3.14
print("a+b=", a+b) # 输出a加b的值
print('b+c=', b+c) # 输出b加c的值
数字类型的数据,可以进行的操作有下面这些:
操作 | 例子 | 解释 |
---|---|---|
- | -3, -a, -b | 得到一个正数的负数 |
+ | 3+4, a+b | 加法操作 |
- | 3-4, a-b | 减法操作 |
* | 3*4, a*b | 乘法 |
/ | 3/4, a/b | 除法,例如 5/2 = 2.5 |
// | 5//2, a//b | 整除,例如5//2 = 2 |
% | 5%2 | 求余数,5%2 = 1 |
** | 2**3 | 幂运算,2**3表示2的3次方,结果为8 |
> | a > b | 判断 a 是不是大于 b,如果大于,那么结果为True,否则为假 |
>= | a>=b | 判断 a 是否大于或者等于 b,结果为 True 或 False |
< | a < b | 判断 a 是否小于 b,结果为 True 或 False |
<= | a <= b | 判断 a 是否小于或者等于 b,结果为 True 或 False |
== | a == b | 判断 a 是否等于 b,结果为 True 或 False |
!= | a != b | 判断 a 是否不等于 b,结果为 True 或 False |
除了上面这些操作,Python 也提供了一些模块或内置函数来对数字类型的数据进行操作。例如 math 模块可以进行三角函数的计算等等;还有一些第三方库也提供了一些函数来操作数字类型:
import math
a = math.gcd(4,6) # 求 4 和 6 的最大公约数
b = math.sin(30) # 求 sin(30) 的值(这里的30是弧度)
print(a) # 输出 2
print(b) # 输出-0.9880316240928618
序列类型
to be continue
文本序列(字符串)
to be continue
映射类型
to be continue.