一、列表的概念
列表(List)是一种有序的集合,可以随时添加和删除其中的元素。列表中的元素不必具有相同的类型,可以包含整数、浮点数、字符串、甚至是其他列表(即嵌套列表)。列表是可变的,这意味着我们可以修改列表中的元素。
二、列表的创建
(1)使用方括号 [ ] 来创建一个列表,元素之间用逗号 , 分隔。
my_list = [1, 2, 3, 4, 5]
my_string_list = ["apple", "banana", "cherry"]
my_mixed_list = [1, "hello", 3.14, [1, 2, 3]]
(2)使用 list() 函数将其他数据类型转换为列表,例如将字符串转换为字符列表,或将元组转换为列表:
string_to_list = list("hello") # ['h', 'e', 'l', 'l', 'o']
tuple_to_list = list((1, 2, 3)) # [1, 2, 3]
三、列表的索引与切片
(1)列表中的每个元素都有一个索引,索引从0开始。你可以使用索引来访问列表中的元素。
my_list = [10, 20, 30, 40, 50]
print(my_list[0]) # 输出: 10
print(my_list[-1]) # 输出: 50 (负索引表示从列表末尾开始计数)
(2)切片操作允许你获取列表的一部分,使用冒号 : 来指定起始和结束索引(切片是左闭右开的,即包含起始索引,不包含结束索引)
my_list = [10, 20, 30, 40, 50]
print(my_list[1:4]) # 输出: [20, 30, 40]
print(my_list[:3]) # 输出: [10, 20, 30] (从起始到索引3,不包括索引3)
print(my_list[2:]) # 输出: [30, 40, 50] (从索引2到末尾)
四、列表的相关操作与序列相同
lis1 = ["apple", "banana", "cherry",'aa']
lis2 = list("hello") # ['h', 'e', 'l', 'l', 'o']
print(lis1)
print(lis2)
print(lis2+lis1)
print(lis2*5)
print('W在lis1字符串中存在吗?:',('e' in lis1))
print('w在lis1字符串中存在吗?:',('w' in lis1))
# not in
print('o在lis1字符串中不存在吗?:',('o' not in lis1))
print('y在lis1字符串中不存在吗?:',('y' not in lis1))
# 内置函数
print('len()',len(lis1))
print('max()',max(lis1))
print('min()',min(lis1))
# 序列对象的方法,使用序列的名称,打点调用
print('lis1.index()',lis1.index('banana'))
# 如果没有会直接报错
print('lis1.count()',lis1.count('o'))
五、列表遍历的三种方式
(1)
lis1 = ["apple", "banana", "cherry",'aa']
# 使用for循环遍历
for i in lis1:
print(i)
(2)
#enumearte()函数
for m,i in enumerate(lis1):
print(m,i)# m是序号,不是索引
(3)
# 手动修改起始值
for m,i in enumerate(lis1,start=2):
print(m,i)
for m,i in enumerate(lis1,2):# start字符可以省略不写
print(m,i)