定义
列表(list)由⼀系列按特定顺序排列的元素组成。在 Python 中,用方括号[]
表⽰列表,⽤逗号分隔其中的元素。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 打印水果列表
print(fruits)
输出结果:
['apple', 'banana', 'cherry']
访问列表元素
列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置索引
告诉 Python 即可。要访问列表元素,可指出列表的名称,再指出元素的索引,并将后者放在方括号
内。
在 Python 中,第⼀个列表元素的索引为0
,⽽不是1
。
使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取子列表。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 打印列表的第一个元素
print[0]
# 打印列表的第二个元素
print[1]
# 打印列表的第三个元素
print[2]
# 打印水果列表
print("l like eat " + fruits[1].title())
输出结果:
apple
banana
cherry
l like eat Banana
修改列表中的元素
修改列表元素的语法与访问列表元素的语法类似,也是通过索引
来修改。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 将第一个元素为 apple 修改为 orange
fruits[0] = "orange"
# 打印修改后的水果列表
print(fruits)
输出结果:
['orange', 'banana', 'cherry']
在列表中添加元素
在日常生活中,我们会用到很多添加元素的操作。比如:季节更换,水果店里有了新的水果,我们需要添加新的水果到菜单中。
在列表末尾添加元素
在列表添加新元素时,最简单的方法就是添加新元素到列表的末尾。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 添加 orange 到列表
fruits.append("orange")
# 打印修改后的水果列表
print(fruits)
输出结果:
['apple', 'banana', 'cherry', 'orange']
上述案例中 append()
方法将元素orange
添加到了列表的末尾。
在列表中插入元素
与添加元素不同的是你可以在列表的任意位置插入元素。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 插入 orange 到列表索引 1 处
fruits.insert(1,"orange")
# 打印修改后的水果列表
print(fruits)
输出结果:
['apple', 'orange', 'banana', 'cherry']
上述案例中 insert(index,value)
方法将元素插入列表中。
index | value |
---|---|
索引 | 值 |
删除列表中的元素
使用 del()
语句删除元素
使用 del 可删除任何位置处的列表元素,条件是知道其索引。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 删除 apple
del fruits[0]
# 打印修改后的水果列表
print(fruits)
输出结果:
['banana', 'cherry']
使用方法 pop()
删除元素
有时候,你要将元素从列表中删除,并接着使⽤它的值。pop()
⽅法删除列表末尾的元素,并让你能够接着使⽤它。列表就像⼀个栈,⽽删除列表末尾的元素相当于弹出栈顶元素。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 删除列表中的最后一个元素
fruits.pop()
# 打印修改后的水果列表
print(fruits)
输出结果:
['apple', 'banana']
删除列表中任意位置的元素
实际上,也可以使⽤pop()
删除列表中任意位置的元素,只需要在括号中指定要删除的元素的索引即可。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 删除列表中第二个元素
fruits.pop(1)
# 打印修改后的水果列表
print(fruits)
输出结果:
['apple', 'cherry']
根据值删除元素
有时候,你不知道要从列表中删除的值在哪个位置。如果只知道要删除的元素的值,可使⽤
remove()
⽅法。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 删除 apple 元素
fruits.remove("apple")
# 打印修改后的水果列表
print(fruits)
输出结果:
['banana', 'cherry']
remove()
⽅法让 Python 确定apple
出现在列表的什么地⽅,并将该元素删除。使⽤remove()
从列表中删除元素后,也可继续使⽤它的值。
示例:
# 定义一个水果列表
fruits = ["apple", "banana", "cherry"]
# 打印水果列表
print(fruits)
# 创建新的变量
new_fruit = "cherry"
# 通过变量删除水果
fruits.remove(new_fruit)
# 打印修改后的水果列表
print(fruits)
输出结果:
['apple', 'banana', 'cherry']
['apple', 'banana']
列表的排序
在你创建的列表中,元素的排列顺序常常是⽆法预测的,因为你并⾮总能控制⽤户提供数据的顺序。这虽然在⼤多数情况下是不可避免的,但你经常需要以特定的顺序呈现信息。你有时候希望保留列表元素最初的排列顺序,⽽有时候⼜需要调整排列顺序。Python 提供了很多管理列表的⽅式,可根据具体情况选⽤。
使⽤sort()
⽅法对列表进⾏永久排序
示例:
# 定义一个水果列表
fruits = ["orange", "pear", "lemon", "cherry", "banana"]
# 打印水果列表
print(fruits)
# 对水果进行正向排序 A-Z
fruits.sort()
# 打印排序后的水果列表
print(fruits)
输出结果:
['orange', 'pear', 'lemon', 'cherry', 'banana']
['banana', 'cherry', 'lemon', 'orange', 'pear']
sort()
⽅法能永久地修改列表元素的排列顺序。现在,水果是按字⺟顺序排列的,再也⽆法恢复到原来的排列顺序。
还可以按与字⺟顺序相反的顺序排列列表元素,只需向 sort()
⽅法传递参数 reverse=True
即可。
示例:
# 定义一个水果列表
fruits = ["orange", "pear", "lemon", "cherry", "banana"]
# 打印水果列表
print(fruits)
# 对水果进行反向排序 Z-A
fruits.sort(reverse=True)
# 打印排序后的水果列表
print(fruits)
输出结果:
['orange', 'pear', 'lemon', 'cherry', 'banana']
['pear', 'orange', 'lemon', 'cherry', 'banana']
使⽤ sorted()
函数对列表进⾏临时排序
要保留列表元素原来的排列顺序,并以特定的顺序呈现它们,可使⽤sorted()
函数。sorted()
函数让你能够按特定顺序显⽰列表元素,同时不影响它们在列表中的排列顺序。
示例:
# 定义一个水果列表
fruits = ["orange", "pear", "lemon", "cherry", "banana"]
# 打印水果列表
print(fruits)
# 打印排序后的水果列表
print(sorted(fruits))
# 打印水果列表
print(fruits)
输出结果:
['orange', 'pear', 'lemon', 'cherry', 'banana']
['banana', 'cherry', 'lemon', 'orange', 'pear']
['orange', 'pear', 'lemon', 'cherry', 'banana']
在调⽤sorted()
函数后,列表元素的排列顺序并没有变。如果要按与字⺟顺序相反的顺序显⽰列表,也可向sorted()
函数传递参数 reverse=True
。
使⽤ reverse()
⽅法对列表进⾏反转
reverse()
不是按与字⺟顺序相反的顺序排列列表元素,只是反转列表元素的排列顺序。 reverse()
⽅法会永久地修改列表元素的排列顺序,但可随时恢复到原来的排列顺序,只需对列表再次调⽤ reverse()
即可。
示例:
# 定义一个水果列表
fruits = ["orange", "pear", "lemon", "cherry", "banana"]
# 打印水果列表
print(fruits)
# 对列表元素进行反转
fruits.reverse()
# 打印水果列表
print(fruits)
输出结果:
['orange', 'pear', 'lemon', 'cherry', 'banana']
['banana', 'cherry', 'lemon', 'pear', 'orange']
确定列表的⻓度
使⽤len()
函数可快速获悉列表的⻓度。
# 定义一个水果列表
fruits = ["orange", "pear", "lemon", "cherry", "banana"]
# 打印水果列表
print(fruits)
# 打印水果列表的长度
print(len(fruits))
输出结果:
['orange', 'pear', 'lemon', 'cherry', 'banana']
5
Python 在计算列表元素数时从1
开始,因此你在确定列表⻓度时应该不会遇到差⼀错误。