列表、元组、字典?Python 数据容器大揭秘!
- 公众号:人生只不过是一场投资
- 温馨提示:每个笔记文档都会绑定一个笔记资源;手机端可能看不到,网页端请自行下载。
还在为数据存储而烦恼?Python 数据容器,帮你轻松解决数据管理难题!
前言
想象一下,你需要记录班级里所有同学的名字,用单个变量显然是不现实的。这时候,就需要用到 Python 的数据容器,就像一个个大小不一的“收纳盒”,可以帮助我们高效地存储和管理数据。
Python 中常用的数据容器有三种:列表、元组和字典。它们各自拥有独特的“超能力”,能够应对不同的数据管理场景。
一、列表:你的万能数据收纳箱
列表 (list) 是一种有序、可变的数据容器,就像一个可以装各种东西的收纳箱,而且可以随时调整里面的物品顺序和数量。
1.1 创建列表
使用方括号 []
创建列表,元素之间用逗号 ,
分隔。
# 创建一个空列表
empty_list = []
# 创建一个包含不同类型元素的列表
my_list = ["apple", 123, True, 3.14]
1.2 访问列表元素
通过索引访问列表元素,索引从 0 开始。
my_list = ["apple", "banana", "cherry"]
print(my_list[0]) # 输出:apple
print(my_list[1]) # 输出:banana
print(my_list[-1]) # 输出:cherry (负数索引从后往前数)
1.3 列表切片:获取列表的一部分
my_list = ["apple", "banana", "cherry", "orange"]
print(my_list[1:3]) # 输出:['banana', 'cherry']
print(my_list[:2]) # 输出:['apple', 'banana']
print(my_list[2:]) # 输出:['cherry', 'orange']
print(my_list[::-1]) # 输出:['orange', 'cherry', 'banana', 'apple'] (列表反转)
1.4 列表常用操作
操作 | 描述 | 例子 |
---|---|---|
len(list) | 获取列表长度 | len([1, 2, 3]) 返回 3 |
list1 + list2 | 列表拼接 | [1, 2] + [3, 4] 返回 [1, 2, 3, 4] |
element in list | 判断元素是否存在于列表中 | 'apple' in ['apple', 'banana'] 返回 True |
list.append(element) | 在列表末尾添加元素 | [1, 2].append(3) 列表变为 [1, 2, 3] |
list.insert(index, element) | 在指定位置插入元素 | [1, 3].insert(1, 2) 列表变为 [1, 2, 3] |
list.remove(element) | 删除第一个出现的指定元素 | [1, 2, 2, 3].remove(2) 列表变为 [1, 2, 3] |
list.pop(index) | 删除并返回指定位置的元素,默认删除最后一个元素 | [1, 2, 3].pop(1) 返回 2 ,列表变为 [1, 3] |
list.sort() | 对列表进行排序 | [3, 1, 2].sort() 列表变为 [1, 2, 3] |
list.reverse() | 反转列表 | [1, 2, 3].reverse() 列表变为 [3, 2, 1] |
二、元组:你的安全数据保险箱
元组 (tuple) 是一种有序、不可变的数据容器,就像一个上了锁的保险箱,一旦创建就不能修改里面的内容。
2.1 创建元组
使用圆括号 ()
创建元组,元素之间用逗号 ,
分隔。
# 创建一个空元组
empty_tuple = ()
# 创建一个包含不同类型元素的元组
my_tuple = ("apple", 123, True, 3.14)
2.2 访问元组元素
与列表类似,通过索引访问元组元素。
my_tuple = ("apple", "banana", "cherry")
print(my_tuple[0]) # 输出:apple
print(my_tuple[1]) # 输出:banana
2.3 元组的不可变性
元组创建后不能修改,尝试修改会报错。
my_tuple = ("apple", "banana", "cherry")
my_tuple[1] = "orange" # 报错:TypeError: 'tuple' object does not support item assignment
三、字典:你的专属数据词典
字典 (dictionary) 是一种无序、可变的数据容器,以键值对的形式存储数据,就像一本字典,每个单词都有对应的解释。
3.1 创建字典
使用大括号 {}
创建字典,键值对之间用逗号 ,
分隔,键和值之间用冒号 :
分隔。
# 创建一个空字典
empty_dict = {}
# 创建一个包含不同类型键值对的字典
my_dict = {"name": "Alice", "age": 30, "city": "New York"}
3.2 访问字典元素
通过键访问字典元素。
my_dict = {"name": "Alice", "age": 30, "city": "New York"}
print(my_dict["name"]) # 输出:Alice
print(my_dict["age"]) # 输出:30
3.3 字典常用操作
操作 | 描述 | 例子 |
---|---|---|
len(dict) | 获取字典长度 | len({"name": "Alice", "age": 30}) 返回 2 |
key in dict | 判断键是否存在于字典中 | "name" in {"name": "Alice", "age": 30} 返回 True |
dict[key] = value | 添加或修改键值对 | my_dict["city"] = "London" 将城市修改为 London |
del dict[key] | 删除键值对 | del my_dict["city"] 删除城市信息 |
dict.keys() | 返回字典所有键的列表 | my_dict.keys() 返回 ["name", "age", "city"] |
dict.values() | 返回字典所有值的列表 | my_dict.values() 返回 ["Alice", 30, "New York"] |
dict.items() | 返回字典所有键值对的元组列表 | my_dict.items() 返回 [("name", "Alice"), ("age", 30), ("city", "New York")] |
四、总结
Python 数据容器就像我们生活中的收纳盒,帮助我们高效地存储和管理数据。
- 列表: 有序、可变,适用于存储需要经常修改的数据。
- 元组: 有序、不可变,适用于存储不需要修改的数据,更加安全。
- 字典: 无序、可变,以键值对的形式存储数据,方便查找和修改。
选择合适的数据容器,能让你的代码更简洁高效!