Python 中的几种常用数据类型
在 Python 程序中,程序需要处理不同类型的数据,例如:
- 在数学运算中,需要对数值进行加减乘除等计算。
- 在文本处理中,需要对文本进行分割、连接等操作。
Python 可以处理 7 种类型的数据:
- 数值
- 字符串
- 布尔值
- 列表
- 元组
- 字典
- 集合
本文简略介绍 Python 中每种数据类型的定义和使用场景,使得学习者获得对 Python 的数据类型的整体认识,在后续的小节中详细介绍每种类型的具体使用细节。
1. 数值
数值类型的数据表示整数、浮点数、复数,例如:
- 整数 123
- 浮点数 123.456
- 复数 1 + 2j
数值类型通常用于数值计算的场合,例如:
- 整数运算
>>> 1 + 1
2
- 浮点数运算
>>> 1.1 + 1.1
2.2
- 复数运算
>>> x = 1 + 2j
>>> y = 3 + 4j
>>> x + y
(4 + 6j)
2. 字符串
字符串类型的数据表示一段文本,使用单引号、双引号创建,例如:
- 单引号字符串 ‘hello’
- 双引号字符串 “hello”
字符串通常用于文本的连接,例如:
- 连接两个字符串,形成一个新的字符串
>>> 'Hello' + 'World'
'HelloWorld'
- 连接三个字符串,形成一个新的字符串
>>> 'Hello' + ':' + 'World'
'Hello:World'
3. 布尔值
布尔值类型的数据表示逻辑运算结果,有两种取值:
- 真,使用 True 关键字表示。
- 假,使用 False 关键字表示。
布尔值通常用于逻辑运算的场合,例如:
- 表示比较运算的结果
>>> 2 > 1
True
>>> 2 < 1
False
- 用于条件判断
if 2 > 1:
print('2 > 1 is True')
else:
print('2 > 1 is False')
- 如果 2 > 1 的结果是 True,则执行第 2 行的 print语句
- 如果 2 > 1 的结果是 False,则执行第 4 行的 print语句
4. 列表
列表是一个有序的序列,列表中所有的元素放在 [] 中间,并用逗号分开,例如:
- [1, 2, 3],一个包含 3 个整数的列表
- [‘a’, ‘b’, ‘c’],一个包含 3 个字符串的列表
列表中的元素是顺序排列的,可以通过索引访问列表的元素,例如:
>>> list = [1, 2, 3]
>>> list[0]
1
>>> list[1]
2
>>> list[2]
3
- 在第 1 行,创建了一个列表。
- 在第 2 行,通过 list[0],访问列表的第 0 个元素,列表的下标从 0 开始。
- 在第 4 行,通过 list[1],访问列表的第 1 个元素。
- 在第 6 行,通过 list[2],访问列表的第 2 个元素。
5. 元组
元组是一个有序的序列,元组中所有的元素放在 () 中间,并用逗号分开,例如:
- (1, 2, 3),一个包含 3 个整数的元组
- (‘a’, ‘b’, ‘c’),一个包含 3 个字符串的元组
元组中的元素是顺序排列的,可以通过索引访问元组的元素,例如:
>>> tuple = (1, 2, 3)
>>> tuple[0]
1
>>> tuple[1]
2
>>> tuple[2]
3
- 在第 1 行,创建了一个元组。
- 在第 2 行,通过 tuple[0],访问元组的第 0 个元素,元组的下标从 0 开始。
- 在第 4 行,通过 tuple[1],访问元组的第 1 个元素。
- 在第 6 行,通过 tuple[2],访问元组的第 2 个元素。
元组与列表的区别在于:列表创建后可以修改,元组创建后不可以修改。
下面的程序首先创建列表 [1, 2, 3],然后修改的第 0 项元素,程序输出表明修改成功了。
>>> list = [1, 2, 3]
>>> list[0] = 11
>>> list
[11, 2, 3]
下面的程序首先创建元组 (1, 2, 3),然后修改的第 0 项元素,程序输出表明修改失败了。在第 6 行打印输出 tuple,发现 tuple 没有发送变化。
>>> tuple = (1, 2, 3)
>>> tuple[0] = 11
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> tuple
(1, 2, 3)
6. 字典
字典由键和对应值成对组成,字典中所有的键值对放在 {} 中间,每一对键值之间用逗号分开,例如:
- {‘a’:‘A’, ‘b’: ‘B’, ‘c’:‘C’}
+ 字典中包含3个键值对
+ 键 ‘a’ 的值是 ‘A’
+ 键 ‘b’ 的值是 ‘B’
+ 键 ‘c’ 的值是 ‘C’
- {1:100, 2: 200, 3:300}
+ 字典中包含3个键值对
+ 键 1 的值是 100
+ 键 2 的值是 200
+ 键 3 的值是 300
字典通常用于描述对象的各种属性,例如一本书,有书名、作者名、出版社等各种属性,可以使用字典描述如下:
>>> book = {'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社'}
>>> book['title']
'Python 入门基础'
>>> book['author']
'张三'
>>> book['press']
'机械工业出版社'
- 在第 1 行,创建了一个字典用于描述一本书
- 在第 2 行,使用字符串 ‘title’ 作为键(索引)访问字典中对应的值
- 在第 4 行,使用字符串 ‘author’ 作为键(索引)访问字典中对应的值
- 在第 6 行,使用字符串 ‘press’ 作为键(索引)访问字典中对应的值
7. 集合
集合是一个无序、不重复的序列,集合中所有的元素放在 {} 中间,并用逗号分开,例如:
- {1, 2, 3},一个包含 3 个整数的列表
- {‘a’, ‘b’, ‘c’},一个包含 3 个字符串的列表
集合提供的最基本的操作有:
- 使用 in 关键字检查元素是否在集合中
>>> x = {'a', 'b', 'c'}
>>> 'b' in x
True
>>> 'd' in x
False
- 在第 1 行,创建了一个包含 3 个字符串的集合。
- 在第 2 行,检测字符串 ‘b’ 是否在集合中;第 3 行显示结果为 True。
- 在第 4 行,检测字符串 ‘d’ 是否在集合中;第 5 行显示结果为 False。
- 向集合中增加元素
>>> x = {'a', 'b', 'c'}
>>> x.add('d')
>>> x
{'a', 'b', 'c', 'd'}
- 在第 1 行,创建了一个包含 3 个字符串的集合 x
- 在第 2 行,向集合 x 增加一个元素 ‘d’
- 在第 3 行,打印集合 x,结果表明集合中新增了一个元素
- 从集合中删除元素
>>> x = {'a', 'b', 'c'}
>>> x.remove('c')
>>> x
{'a', 'b'}
- 在第 1 行,创建了一个包含 3 个字符串的集合 x
- 在第 2 行,从集合 x 删除一个元素 ‘c’
- 在第 3 行,打印集合 x,结果表明集合中删除了一个元素
8. 小结
本文中简略介绍了 Python 中支持的 7 种数据类型。它们按照自身是否可以进行修改的特性可以分为两种:
- 可变数据类型:列表、字典、集合
- 不可变数据类型:数值,字符串、布尔值、元组
并且简单介绍了这些数据类型的基本使用。