数据容器大揭秘 3:列表 - 存储数据的百宝箱
- 公众号:人生只不过是一场投资
- 温馨提示:每个笔记文档都会绑定一个笔记资源;手机端可能看不到,网页端请自行下载。
想把多个数据装在一起方便使用?
Python 列表,就是你的数据百宝箱!
前言
在编程世界中,我们常常需要处理大量的数据。
如何有效地组织和管理这些数据,是每一个程序员都需要思考的问题。
今天,就让我们来揭秘 Python 中最常用的数据容器之一:列表 (List)。
它就像一个百宝箱,可以存放各种类型的数据,而且使用起来非常灵活方便!
一、初识列表:有序可变的数据集合
在 Python 中,列表用方括号 []
表示,其中的元素用逗号 ,
分隔。
# 创建一个空列表
my_list = []
# 创建一个包含不同类型元素的列表
my_list = [1, "hello", 3.14, True]
列表的特点:
- 有序性: 列表中的元素按照一定的顺序排列,每个元素都有一个对应的索引 (index)。
- 可变性: 列表中的元素可以被修改、添加或删除。
- 可重复性: 列表中可以包含相同的值。
二、访问列表元素:索引与切片
2.1 索引 (index)
Python 中的索引从 0 开始,可以使用索引访问列表中的单个元素。
my_list = ["apple", "banana", "orange"]
print(my_list[0]) # 输出:apple
print(my_list[1]) # 输出:banana
print(my_list[-1]) # 输出:orange,负数索引表示从后往前数
2.2 切片 (slice)
切片可以获取列表中的一部分元素,使用 [start:end:step]
的语法。
start
:起始索引 (包含),默认为 0。end
:结束索引 (不包含),默认为列表长度。step
:步长,默认为 1。
my_list = ["apple", "banana", "orange", "grape", "mango"]
print(my_list[1:4]) # 输出:['banana', 'orange', 'grape']
print(my_list[:3]) # 输出:['apple', 'banana', 'orange']
print(my_list[2:]) # 输出:['orange', 'grape', 'mango']
print(my_list[::2]) # 输出:['apple', 'orange', 'mango'],每隔一个元素取一个
三、列表操作:像玩积木一样灵活
3.1 修改元素
my_list = ["apple", "banana", "orange"]
my_list[1] = "grape" # 修改索引为 1 的元素
print(my_list) # 输出:['apple', 'grape', 'orange']
3.2 添加元素
# 在末尾添加元素
my_list.append("mango")
# 在指定位置插入元素
my_list.insert(1, "pear")
print(my_list) # 输出:['apple', 'pear', 'grape', 'orange', 'mango']
3.3 删除元素
# 删除指定元素
my_list.remove("grape") # 如果元素不存在,会引发 ValueError 异常
# 删除指定位置的元素
del my_list[0]
print(my_list) # 输出:['pear', 'orange', 'mango']
3.4 列表拼接与重复
list1 = [1, 2, 3]
list2 = [4, 5, 6]
# 列表拼接
list3 = list1 + list2
print(list3) # 输出:[1, 2, 3, 4, 5, 6]
# 列表重复
list4 = list1 * 3
print(list4) # 输出:[1, 2, 3, 1, 2, 3, 1, 2, 3]
四、遍历列表:逐个处理元素
4.1 for 循环遍历
my_list = ["apple", "banana", "orange"]
for fruit in my_list:
print(fruit)
4.2 enumerate
函数:同时获取索引和元素
my_list = ["apple", "banana", "orange"]
for index, fruit in enumerate(my_list):
print(f"索引:{index},元素:{fruit}")
五、列表推导式:简洁高效地创建列表
列表推导式提供了一种简洁的方式来创建列表,语法如下:
new_list = [expression for item in iterable if condition]
例子:
# 生成 1 到 10 的平方列表
squares = [x**2 for x in range(1, 11)]
print(squares) # 输出:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
# 生成包含所有偶数的列表
evens = [x for x in range(1, 11) if x % 2 == 0]
print(evens) # 输出:[2, 4, 6, 8, 10]
六、总结
Python 列表是一个非常强大且灵活的数据容器,学习它就像拥有了一个百宝箱,可以帮助我们更好地组织和处理数据。
熟练掌握列表的创建、访问、操作和遍历等方法,将为你的 Python 编程之路打下坚实的基础!