文章目录
- 一、列表
- 1.创建列表
- 2.访问列表元素
- 3.修改列表元素
- 4.添加元素
- 5.删除元素
- 二、列表脚本操作符
- 1.连接运算符 +
- 2.重复运算符 *
- 三、列表函数&方法
- 1.函数
- 1.1 len() 函数
- 1.2 max() 函数
- 1.3 min() 函数
- 1.4 sum() 函数
- 1.5 list() 函数
- 2.方法
- 2.1 append() 方法
- 2.2 extend() 方法
- 2.3 count() 方法
- 2.4 index() 方法
- 2.5 insert()方法
- 2.6 pop() 方法
- 2.7 remove() 方法
- 2.8 reverse() 方法
- 2.9 sort() 方法
- 四、总结
一、列表
在Python 3中,列表是一种有序的集合,它包含了多个元素并且每个元素可以是任意类型的数据。列表使用方括号 [ ] 来表示,其中的元素由逗号 , 分隔开。
1.创建列表
首先,我们可以创建一个空的列表:
# 创建一个空列表
my_list = []
然后,我们创建一个包含多个元素的列表
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
2.访问列表元素
序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推。我们可以使用 [] 运算符来访问列表中的元素。在 [] 中指定索引值,例如:
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 访问列表元素
print(my_list[0]) # 输出:1
print(my_list[1]) # 输出:2
索引也可以从尾部开始,最后一个元素的索引为 -1,往前一位为 -2,以此类推。
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 访问列表元素
print(my_list[-1]) # 输出:banana
print(my_list[-2]) # 输出:apple
如果索引值超出了列表的范围,将引发一个 IndexError 异常。
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 访问列表元素
print(my_list[-8])
输出结果:
我们还可以采用列表切片来检索一个范围的元素,使用 : 运算符来定位要检索的开始索引(包含)和结束索引(不包含)。
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 访问列表元素
print(my_list[1:3]) # 输出:[2, 3]
这里需要注意:切片操作包括从开始索引所指示的元素开始,一直到结束索引所指示的元素,但不包括最终索引所指示的元素。如果没有指定开始索引,将使用列表的第一个元素作为默认开始索引;如果没有指定结束索引,则将使用列表中的最后一个元素作为默认结束索引。
我们还可以使用负数索引来访问列表中的元素。
my_list = [1, 2, 3, 'apple', 'banana']
# 访问列表元素
print(my_list[:-2]) # 输出:[1, 2, 3]
3.修改列表元素
列表中的元素是可变的,可以通过赋值运算符 = 来更改。
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 修改列表元素
my_list[0] = '4'
print(my_list) # 输出:[4, 2, 3, 'orange', 'banana']
我们也可以使用切片操作将多个元素同时更改:
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 修改列表元素
my_list[0:2] = [4,5]
print(my_list) # 输出:[4, 5, 3, 'orange', 'banana']
4.添加元素
在列表的末尾添加一个元素,可以使用 append() 方法:
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 添加元素
my_list.append(4)
print(my_list) # 输出:[1, 2, 3, 'apple', 'banana', 4]
如果你想在列表的任意位置添加元素,可以使用 insert() 方法。
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 添加元素
my_list.insert(1, 4)
print(my_list) # 输出:[1, 4, 2, 3, 'apple', 'banana']
insert() 方法用于将指定元素插入到列表的指定位置,语法如下:
list.insert(index, element)
# index 表示要插入的位置索引。
# element 表示要插入的元素。
5.删除元素
如果是删除指定位置的元素,可以采用del关键字或者pop()方法
del关键字
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 删除元素
del my_list[1]
print(my_list) # 输出:[1, 3, 'apple', 'banana']
pop()方法
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 删除元素
my_list.pop(1)
print(my_list) # 输出:[1, 3, 'apple', 'banana']
如果是删除列表中的指定元素,还可以使用remove() 方法
# 创建一个列表
my_list = [1, 2, 3, 'apple', 'banana']
# 删除元素
my_list.remove(1)
print(my_list) # 输出:[2, 3, 'apple', 'banana']
二、列表脚本操作符
1.连接运算符 +
连接运算符 + 用于将两个列表连接成一个新的列表。
list1 = [1, 2, 3]
list2 = [4, 5, 6]
result = list1 + list2
print(result) # 输出:[1, 2, 3, 4, 5, 6]
2.重复运算符 *
重复运算符 * 用于将列表的元素重复多次。
list1 = [1, 2, 3]
result = list1 * 2
print(result) # 输出:[1, 2, 3, 1, 2, 3]
三、列表函数&方法
1.函数
1.1 len() 函数
len()函数的作用是返回列表中元素的个数。
# 创建一个列表
my_list = [10, 20, 30, 40, 50]
# 使用 len() 函数获取列表中元素的个数
length = len(my_list)
print(length) # 输出:5
1.2 max() 函数
max() 函数的作用是返回列表中元素的最大值。
# 创建一个列表
my_list = [10, 20, 30, 40, 50]
# 使用 max() 函数获取列表中的最大值
max_value = max(my_list)
print(max_value) # 输出:50
1.3 min() 函数
min() 函数的作用是返回列表中元素的最小值。
# 创建一个列表
my_list = [10, 20, 30, 40, 50]
# 使用 min() 函数获取列表中的最小值
min_value = min(my_list)
print(min_value) # 输出:10
1.4 sum() 函数
sum函数的作用是返回列表中所有元素的总和。
# 创建一个列表
my_list = [10, 20, 30, 40, 50]
# 使用 sum() 函数计算列表中所有元素的总和
total = sum(my_list)
print(total) # 输出:150
1.5 list() 函数
list() 函数的作用是可以用来将一个可迭代对象(如元组、字符串、集合等)转换为列表。
# 将元组转换为列表
tuple_data = (1, 2, 3, 4, 5)
list_from_tuple = list(tuple_data)
print(list_from_tuple) # 输出:[1, 2, 3, 4, 5]
# 将字符串转换为列表
string_data = "hello"
list_from_string = list(string_data)
print(list_from_string) # 输出:['h', 'e', 'l', 'l', 'o']
# 将集合转换为列表
set_data = {1, 2, 3, 4, 5}
list_from_set = list(set_data)
print(list_from_set) # 输出:[1, 2, 3, 4, 5]
2.方法
2.1 append() 方法
append() 方法的作用是在列表末尾添加一个元素。
# 创建一个列表
my_list = [10, 20, 30, 40, 50]
# 使用 append() 方法在列表末尾添加元素
my_list.append(100)
my_list.append('six')
my_list.append([7, 8, 9])
print(my_list) # 输出:[10, 20, 30, 40, 50, 100, 'six', [7, 8, 9]]
2.2 extend() 方法
extend() 方法的作用是将可迭代对象中的元素添加到列表末尾。
# 创建一个列表
my_list = [10, 20, 30, 40, 50]
# 使用 extend() 方法将可迭代对象中的元素添加到列表末尾
my_list.extend([7, 8, 9])
print(my_list) # 输出:[10, 20, 30, 40, 50, 7, 8, 9]
2.3 count() 方法
count() 方法的作用是统计列表中某个元素出现的次数。
# 示例 1 – 确定项在列表中出现的次数。
my_list = [1, 2, 2, 2, 3, 4, 5, 5, 6]
count = my_list.count(2)
print("数量: ", count) # 输出 数量: 3
# 示例 2 – 使用计数结果在列表中移除元素。
my_list = [1, 2, 2, 2, 3, 4, 5, 5, 6]
count = my_list.count(2)
for i in range(count):
my_list.remove(2)
print(my_list) # 输出 [1, 3, 4, 5, 5, 6]
# 示例 3 – 查找列表中唯一元素的数量。
my_list = [1, 2, 3, 4, 5, 6]
unique_count = len(set(my_list))
print("唯一元素数量: ", unique_count) # 输出 唯一元素数量: 6
2.4 index() 方法
index() 方法的作用是返回列表中某个元素的第一个匹配项的索引。
# 例1:查找列表中特定元素的索引
fruits = ['apple', 'banana', 'cherry']
print(fruits.index('banana')) # 输出1
# 例2:查找列表中特定元素的索引,指定起始位置
fruits = ['apple', 'banana', 'cherry']
print(fruits.index('banana', 1)) # 输出1
# 例3:查找列表中特定元素的索引,指定起始位置和结束位置
fruits = ['apple', 'banana', 'cherry']
print(fruits.index('banana', 1, 3)) # 输出1
# 例4:查找不存在的元素
fruits = ['apple', 'banana', 'cherry']
print(fruits.index('orange')) # 会引发ValueError异常
以下是一些关于index()方法的注意事项:
- 如果要查找的元素在列表中多次出现,则index()方法只会返回第一个匹配元素的索引。
- 如果要查找的元素不存在于列表中,则index方法将引发ValueError异常。
- 如果指定了start参数,将从指定的索引处开始查找元素。如果元素不存在,则引发ValueError异常。
- 如果指定了end参数,则index()方法将在指定的索引处之前停止查找元素。如果元素不存在,则引发ValueError异常。
- 如果省略start和end参数,则index()方法将在列表的起始位置查找元素。
2.5 insert()方法
insert()方法的作用是在指定位置插入一个元素。
# 示例 1 – 插入一个元素
fruits = ["apple", "banana", "cherry"]
fruits.insert(1, "orange")
print(fruits) # 输出['apple', 'orange', 'banana', 'cherry']
# 示例 2 – 插入多个元素
fruits = ["apple", "banana", "cherry"]
fruits.insert(1, ["orange", "watermelon"])
print(fruits) # 输出['apple', ['orange', 'watermelon'], 'banana', 'cherry']
# 需要注意的是,这种方式插入的元素是一个列表。如果想要在列表中插入多个独立的元素,需要将它们逐一插入。
# 插入多个独立的元素
fruits = ["apple", "banana", "cherry"]
fruits.insert(1, "orange")
fruits.insert(2, "watermelon")
print(fruits) # 输出 ['apple', 'orange', 'watermelon', 'banana', 'cherry']
# 示例 3 – 在列表的长度范围外插入元素,引发IndexError异常
fruits = ["apple", "banana", "cherry"]
fruits.insert(5, "orange")
2.6 pop() 方法
pop() 方法的作用是移除列表中指定位置的元素,并返回该元素的值。如果未指定位置,则默认移除并返回最后一个元素。
# 示例 1 – 默认移除最后一个元素
fruits = ['apple', 'banana', 'cherry']
fruits.pop()
print(fruits) # 输出 ['apple', 'banana']
# 示例 2 – 移除指定位置的元素
fruits = ['apple', 'banana', 'cherry']
fruits.pop(1)
print(fruits) # 输出 ['apple', 'cherry']
# 示例 3 – 异常案例
fruits = ['apple', 'banana', 'cherry']
fruits.pop(3) # 输出 IndexError: pop index out of range
2.7 remove() 方法
remove() 方法的作用是移除列表中某个值的第一个匹配项。
# 示例 1 – 删除元素
fruits = ['apple', 'banana', 'orange']
fruits.remove('orange')
print(fruits) # 输出 ['apple', 'banana']
# 示例 2 – 删除第一个匹配项
fruits = ['apple', 'banana', 'orange', 'apple']
fruits.remove('apple')
print(fruits) # 输出 ['banana', 'orange', 'apple']
# 示例 3 – 删除不存在的元素
fruits = ['banana', 'orange']
fruits.remove('apple')
print(fruits) # 输出 ValueError: list.remove(x): x not in list
2.8 reverse() 方法
reverse() 方法的作用是将列表中的元素反向排列。
# 创建一个列表
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
# 使用 reverse() 方法将列表中的元素反向排列
numbers.reverse()
print(numbers) # 输出:[5, 3, 5, 6, 2, 9, 5, 1, 4, 1, 3]
2.9 sort() 方法
sort() 方法的作用是对列表进行排序。sort(key=None, reverse=False):可选参数 key 指定排序的方式,reverse=True 则表示降序排序。默认为升序。
# 创建一个列表
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
# 使用 sort() 方法对列表进行排序
# 默认升序
numbers.sort()
print(numbers) # 输出:[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
# 降序
numbers.sort(reverse=True)
print(numbers) # 输出:[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
注意事项:
- sort()方法直接修改原始列表,而不是返回一个新的列表。
- 不能对含有数字和字符串的列表进行排序,如[“apple”, 1, “banana”, 2]。
- 如果需要倒序排序,请使用reverse()方法,如list.reverse()。
四、总结
今天主要讲了Python的列表的相关内容。
感谢你的观看!