一、核心数据类型概览
Python数据类型可分为可变类型与不可变类型两大类:
- 不可变类型:整数(
int
)、浮点数(float
)、字符串(str
)、布尔值(bool
)、元组(tuple
) - 可变类型:列表(
list
)、字典(dict
)、集合(set
)
二、基础数据类型补充
1. 布尔型(bool
)
- 定义:仅有
True
和False
两个值,用于逻辑判断 - 本质:是整型的子类(
True=1
,False=0
)
is_student = True
print(True + 1) # 输出2
2. 字符串高级操作
- 转义字符:
\n
(换行)、\t
(制表符)、\\
(反斜杠) - 多行字符串:用三引号
'''
或"""
包裹
poem = """静夜思
床前明月光,疑是地上霜。
举头望明月,低头思故乡。"""
三、组合数据类型详解
1. 列表(list
)
- 特性:有序可变序列,支持混合数据类型
# 创建与操作
shopping_list = ["苹果", "牛奶", 3.5]
shopping_list.append("面包") # 追加元素
shopping_list.insert(1, "香蕉") # 插入元素
del shopping_list[0] # 删除元素
print(shopping_list[1:3]) # 切片输出:["牛奶", 3.5]
2. 元组(tuple
)
- 特性:有序不可变序列,常用于固定数据存储
coordinates = (39.9, 116.4)
# coordinates[0] = 40.0 # 报错!元组不可修改
3. 字典(dict
)
- 特性:键值对集合,键必须唯一且不可变
student = {
"name": "小明",
"age": 18,
"courses": ["数学", "英语"]
}
print(student.get("age")) # 获取值 → 18
student["gender"] = "男" # 新增键值对
4. 集合(set
)
- 特性:无序唯一元素集合,支持交并差运算
unique_numbers = {1, 2, 2, 3} # 自动去重 → {1, 2, 3}
a = {1, 2}; b = {2, 3}
print(a & b) # 交集 → {2}
四、数据类型应用场景
类型 | 典型场景 | 操作效率 |
---|---|---|
列表 | 动态数据存储(如购物清单、日志记录) | 查询O(n) |
元组 | 固定配置项(如坐标、数据库字段定义) | 内存占用少 |
字典 | 快速键值查询(如用户信息、配置参数) | 查询O(1) |
集合 | 去重/集合运算(如统计唯一IP、共同好友) | 成员检测O(1) |
五、综合案例演示
学生成绩管理系统(结合列表+字典)
students = [
{"name": "张三", "scores": [85, 90]},
{"name": "李四", "scores": [78, 92]}
]
# 添加新学生
students.append({"name": "王五", "scores": [88, 95]})
# 计算平均分
for student in students:
avg = sum(student["scores"]) / len(student["scores"])
print(f"{student['name']}平均分:{avg:.1f}")
六、总结
重点总结
- 列表适合频繁修改的序列数据,字典适合快速键值查询
- 元组比列表内存占用更少,适合存储不变数据
- 集合的自动去重特性在数据清洗中非常实用