列表定义:
可以直接使用 [] 来定义一个列表,或者使用list()函数,将参数转换为列表
l = []
s = ''
l1 = list(s)
print(type(l))
print(type(l1))
# 输出结果:
<class 'list'>
<class 'list'>
对列表进行增删改查:
查找:可以通过下标查找列表中指定位置的数据:
l = ['a', 'b', 'c']
print(l[0]) # 输出结果: a
print(l[1]) # 输出结果: b
print(l[2]) # 输出结果: c
print(l[3]) # 查找的下标超出列表的长度时会报错:
IndexError: list index out of range
修改:通过下标查找到指定位置的数据之后,可以直接通过=来赋值,达到修改的目的
l = ['a', 'b', 'c']
print(l)
l[0] = 'd'
print(l)
# 输出结果:
['a', 'b', 'c']
['d', 'b', 'c']
删除:通过下标查找到指定位置的数据之后,可以使用del来完成删除操作:
l = ['a', 'b', 'c']
print(l)
del l[0]
print(l)
# 输出结果:
['a', 'b', 'c']
['b', 'c']
增加:
列表末尾添加指定内容:使用内置函数 list.append()
一次添加多个元素,只可接受一个可迭代的参数:使用内置函数 list.extend()
指定位置插入:使用内置函数 list.insert(index,str)
l = ['a', 'b', 'c']
l.append('d') # 列表末尾添加字符d
print(l) # 输出结果:['a', 'b', 'c', 'd']
l1 = ['x', 'y', 'z']
l.extend(l1) # 将列表l1拆分开 分别添加在列表l末尾,此时列表中有七个元素
print(l) # 输出结果:['a', 'b', 'c', 'd', 'x', 'y', 'z']
l.insert(3,'t') # 在列表l中下标为3处添加字符t,此时l[3] = 't'
print(l) # 输出结果:['a', 'b', 'c', 't', 'd', 'x', 'y', 'z']
常见的列表函数
列表删除指定内容,如果没有找到要删除的元素则报出异常 list.remove()
l = ['a', 'b', 'c']
l.remove('a')
print(l) # 输出结果: ['b', 'c']
l.remove('a') # 此时报错
ValueError: list.remove(x): x not in list
列表删除指定内容,通过下标来删除,不用下标时默认删除最后一个元素 list.pop(index)
l = ['a', 'b', 'c']
l.pop(2) # 输出结果: ['a', 'b']
print(l)
l.pop(2) # 此时报错:IndexError: pop index out of range
删除列表内全部内容 list.clear()
l = ['a', 'b', 'c']
l.clear()
print(l) # 输出结果: []
“不返回值 改变原列表中的元素排序,将其倒序排列 list.reverse()
print(hotpot_list[::-1]) 将原列表倒序显示 不改变原列表”
l = ['a', 'b', 'c'] # 将原列表倒序输出,不改变原列表的值
print(l[::-1]) # 输出结果: ['c', 'b', 'a']
print(l) # 输出结果: ['a', 'b', 'c']
l.reverse() # 将原列表倒序排列,改变原列表的值
print(l) # 输出结果: ['c', 'b', 'a']
对列表进行排序,改变原列表值,没有返回值。加reverse=Ture表示降序排序,默认False表示升序 list.sort()
l = ['b', 'a', 'c']
l.sort()
print(l) # 输出结果: ['a', 'b', 'c']
l.sort(reverse=True)
print(l) # 输出结果: ['c', 'b', 'a']
对列表进行排序,不改变原列表值,有返回值 返回值为排序后的列表。加reverse=Ture表示降序排序,默认False表示升序 sorted(list)
l = ['b', 'a', 'c']
print(sorted(l)) # 输出结果: ['a', 'b', 'c']
print(sorted(l, reverse=True)) # 输出结果: ['c', 'b', 'a']
print(l) # 输出结果: ['b', 'a', 'c']
查找指定内容出现的次数 list.count()
l = ['b', 'a', 'c', 'a']
print(l.count('a'))
print(l.count('b'))
# 输出结果:
2
1
“用于将一个可遍历的数据对象(如列表,元组或字符串)组合为一个索引序列
for index,calue in enumerate(s) 此时i对应下标,s对应内容” enumerate()
l = ['b', 'a', 'c']
print(enumerate(l)) # 输出结果: <enumerate object at 0x00000233CDF887E0> 返回值为一个enumerate对象
for i in enumerate(l):
print(i)
# 输出结果:
(0, 'b')
(1, 'a')
(2, 'c')
for index, value in enumerate(l):
print(index, value)
# 输出结果:
0 b
1 a
2 c