list
Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。
创建一个列表:
list = [1,2,3,'d','e','a','f','a','r','a',5,6,2]
与字符串的索引一样,列表索引从 0 开始,第二个索引是 1,依此类推。
例:
list = [1,2,3,'d','e','a','f','a','r','a',5,6,2]
print(list[0])
print(list[1])
print(list[2])
#输出结果
1
2
3
索引也可以从尾部开始,最后一个元素的索引为 -1,往前一位为 -2,以此类推。
print(list[-1])
print(list[-2])
print(list[-3])
#输出结果
2
6
5
使用下标索引来访问列表中的值,同样你也可以使用方括号 [] 的形式截取字符,如下所示:
print(list[0:4])
print(list[3:5])
#输出结果
[1, 2, 3, 'd']
['d', 'e']
####更新列表
你可以对列表的数据项进行修改或更新,你也可以使用 append() 方法来添加列表项
list = [1,2,3,'d','e','a','f','a','r','a',5,6,2]
print("第五个元素为:",list[4])
list[4] = 't'
print("更新后",list[4])
#输出结果
第五个元素为: e
更新后 t
append()
方法用于在列表末尾添加新的对象。
append()方法语法:
list.append(obj)参数:
obj : 添加到列表末尾的对象。返回值:
该方法无返回值,但是会修改原来的列表。
list = [1,2,3,'d','e','a','f','a','r','a',5,6,2]
list.append(123)
print("添加后的列表",list)
#输出结果
添加后的列表 [1, 2, 3, 'd', 'e', 'a', 'f', 'a', 'r', 'a', 5, 6, 2, 123]
extend()
函数用于在列表末尾一次性追加另一个序列中的多个值。
extend()方法语法:
list.extend(seq)参数:
seq:元素列表,可以是列表、元组、集合、字典;若为字典,则仅会将键作为元素依次添加至原列表的末尾。返回值:
该方法没有返回值,但会在已存在的列表中添加新的列表内容。
list1 = [1,2,3]
list2 = ['a','b','c']
list1.extend(list2)
print('一次性追加list2',list1)
#输出结果
一次性追加list2 [1, 2, 3, 'a', 'b', 'c']
删除列表元素
可以使用 del 语句来删除列表的的元素
list = [1,2,3,'d','e','a','f','a','r','a',5,6,2]
print ("原始列表 : ", list)
del list[2]
print ("删除第三个元素 : ", list)
#输出结果
原始列表 : [1, 2, 3, 'd', 'e', 'a', 'f', 'a', 'r', 'a', 5, 6, 2]
删除第三个元素 : [1, 2, 'd', 'e', 'a', 'f', 'a', 'r', 'a', 5, 6, 2]
pop()
函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
pop()方法语法:
list.pop(index=-1)参数:
index: 可选参数,要移除列表元素的索引值,不能超过列表总长度,默认为 index=-1,删除最后一个列表值。返回值:
该方法返回从列表中移除的元素对象。
例:
list = [1,2,3,'d','e','a','f','a','r','a',5,6,2]
print("移除元素:",list.pop(3))
print("修改后的列表:",list)
#输出结果
移除元素: d
修改后的列表: [1, 2, 3, 'e', 'a', 'f', 'a', 'r', 'a', 5, 6, 2]
remove()
函数用于移除列表中某个值的第一个匹配项。
remove()方法语法:
list.remove(obj)参数:
obj :列表中要移除的对象。返回值:
该方法没有返回值但是会移除列表中的某个值的第一个匹配项。
例:
list = [1,2,3,'d','e','a','f','a','r','a',5,6,2]
list.remove(5)
print("修改后的列表:",list)
#输出结果
修改后的列表: [1, 2, 3, 'd', 'e', 'a', 'f', 'a', 'r', 'a', 6, 2]
python列表脚本操作符
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。
Python 表达式 | 结果 | 描述 |
len([1, 2, 3]) | 3 | 长度 |
[1, 2, 3] + [4, 5, 6] | [1, 2, 3, 4, 5, 6] | 组合 |
[‘Hi!’] * 4 | [‘Hi!’, ‘Hi!’, ‘Hi!’, ‘Hi!’] | 重复 |
3 in [1, 2, 3] | True | 元素是否存在于列表中 |
for x in [1, 2, 3]: print(x, end=" ") | 1 2 3 | 迭代 |
index()
函数用于从列表中找出某个值第一个匹配项的索引位置。
index()方法语法:
list.index(obj)参数:
obj:查找的对象。返回值:
该方法返回查找对象的索引位置,如果没有找到对象则抛出异常。
list = [1,2,3,'d','e','f','r',5,6]
print('e的索引值为:',list.index('e'))
print("5的索引值为:",list.index(5))
#输出结果
e的索引值为: 4
5的索引值为: 7
insert()
函数用于将指定对象插入列表的指定位置。
insert()方法语法:
list.insert(index, obj)参数:
index: 对象obj需要插入的索引位置。obj: 要插入列表中的对象。返回值:
该方法没有返回值,但会在列表指定位置插入对象。
list = [1,2,3,'d','e','f','r',5,6]
list.insert(2,'hello')
print("插入后:",list)
#输出结果
插入后: [1, 2, 'hello', 3, 'd', 'e', 'f', 'r', 5, 6]
reverse()
函数用于反向列表中元素。
reverse()方法语法:
ist.reverse()参数:
没有参数。返回值:
该方法没有返回值,但是会对列表的元素进行反向排序。
list = [1,2,3,'d','e','f','r',5,6]
list.reverse()
print("插入后:",list)
#输出结果
插入后: [6, 5, 'r', 'f', 'e', 'd', 3, 2, 1]
sort()
函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。
sort()方法语法:
list.sort( key=None, reverse=False)参数:
key:主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。reverse:排序规则,reverse = True降序,reverse = False升序(默认)。返回值:
该方法没有返回值,但是会对列表的对象进行排序。默认reverse = False升序(从小到大):
list = [1,9,2,3,8,5,6]
list.sort()
print("默认升序:",list)
#输出结果
默认升序: [1, 2, 3, 5, 6, 8, 9]
reverse = True降序(从大到小):
list = [1,9,2,3,8,5,6]
list.sort(reverse = True)
print(list)
#输出结果
[9, 8, 6, 5, 3, 2, 1]
copy()
函数用于复制列表。
copy()方法语法:
list.copy()参数:
无。返回值:
返回复制后的新列表。
list = [1,9,2,3,8,5,6]
ls = list.copy()
print(ls)
#输出结果
[1, 9, 2, 3, 8, 5, 6]
clear()
函数用于清空列表。
clear()方法语法:
list.clear()参数:
无。返回值:
该方法没有返回值。
list = [1,9,2,3,8,5,6]
list.clear()
print(list)
#输出结果
[]
汇总
序号 | 函数 |
1 | len(list) 列表元素个数 |
2 | max(list) 返回列表元素最大值 |
3 | min(list) 返回列表元素最小值 |
4 | list(seq) 将元组转换为列表 |
序号 | 方法 |
1 | list.append(obj) 在列表末尾添加新的对象 |
2 | list.count(obj) 统计某个元素在列表中出现的次数 |
3 | list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) |
4 | list.index(obj) 从列表中找出某个值第一个匹配项的索引位置 |
5 | list.insert(index, obj) 将对象插入列表 |
6 | [list.pop(index=-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 |
7 | list.remove(obj) 移除列表中某个值的第一个匹配项 |
8 | list.reverse() 反向列表中元素 |
9 | list.sort( key=None, reverse=False) 对原列表进行排序 |
10 | list.clear() 清空列表 |
11 | list.copy() 复制列表 |