一、列表
定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素
特性:
1.可存放多个值
2.可修改指定索引位置对应的值,可变
3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问,有序
二、列表创建
list_test=[’lhf‘,12,'ok'] 或 list_test=list('abc') 或 list_test=list([’lhf‘,12,'ok'])
三、常用操作
1.访问列表中的值
#!/usr/bin/python3 list1 = ['Google', 'Runoob', 1997, 2000]; list2 = [1, 2, 3, 4, 5, 6, 7 ]; print ("list1[0]: ", list1[0]) print ("list2[1:5]: ", list2[1:5])
list1[0]: Google
list2[1:5]: [2, 3, 4, 5]
2.列表修改
#!/usr/bin/python3
list = ['Google', 'Runoob', 1997, 2000] print ("第三个元素为 : ", list[2]) list[2] = 2001 print ("更新后的第三个元素为 : ", list[2])
结果为;
第三个元素为 : 1997
更新后的第三个元素为 : 2001
3.删除列表中的元素
#!/usr/bin/python3 list = ['Google', 'Runoob', 1997, 2000] print (list) del list[2] print ("删除第三个元素 : ", list)
结果为:
删除第三个元素 : ['Google', 'Runoob', 2000]
4.append
描述:在列表的末尾添加元素
参数:p_object 添加的元素
返回值:None(原列表会被修改)
#!/usr/bin/python3
list1 = ['Google', 'Runoob', 'Taobao'] list1.append('Baidu') print ("更新后的列表 : ", list1)
输出结果
更新后的列表 : ['Google', 'Runoob', 'Taobao', 'Baidu']
5.insert
描述:将元素插入到列表中指定的位置
参数:index 指定的索引位置
p_object 要插入的元素
返回值:None(原列表会被修改)
#!/usr/bin/python3 list1 = ['Google', 'Runoob', 'Taobao'] list1.insert(1, 'Baidu') print ('列表插入元素后为 : ', list1)
输出结果
列表插入元素后为 : ['Google', 'Baidu', 'Runoob', 'Taobao']
6.extend
描述:用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表,扩展的值添加到列表末尾)
参数:iterable 元素列表
返回值:None(原列表会被修改)
list1 = ['Google', 'Runoob', 'Taobao'] list2=list(range(5)) # 创建 0-4 的列表 list1.extend(list2) # 扩展列表 print ("扩展后的列表:", list1)
结果:
扩展后的列表: ['Google', 'Runoob', 'Taobao', 0, 1, 2, 3, 4]
7.remove
描述:移除列表中指定的元素
参数:value 指定的元素
返回值:None(原列表会被修改)
list1 = ['Google', 'Runoob', 'Taobao', 'Baidu'] list1.remove('Taobao') print ("列表现在为 : ", list1) list1.remove('Baidu') print ("列表现在为 : ", list1)
结果;
列表现在为 : ['Google', 'Runoob', 'Baidu'] 列表现在为 : ['Google', 'Runoob']
8.pop
描述:移除列表中指定的元素(默认删除列表中最后一个元素,删除并且把删除的元素返回,我们可以用一个变量名去接收该返回值)
参数:index 索引位置
返回值:返回被移除的元素
实例1:
#!/usr/bin/python3 list1 = ['Google', 'Runoob', 'Taobao'] list1.pop() print ("列表现在为 : ", list1) list1.pop(1) print ("列表现在为 : ", list1)
结果:
列表现在为 : ['Google', 'Runoob'] 列表现在为 : ['Google']
示例2
l = ['william','lisa','knight','pudding'] l.pop(2) # 指定删除索引2位置的元素 print(type(l),l) 输出结果: <class 'list'> ['william', 'lisa', 'pudding']
9.count
描述:
count() 方法用于统计某个元素在列表中出现的次数
参数:value 指定的值
返回值:返回这个值在列表中的位置,若未找到则返回0
#!/usr/bin/python3 aList = [123, 'Google', 'Runoob', 'Taobao', 123]; print ("123 元素个数 : ", aList.count(123)) print ("Runoob 元素个数 : ", aList.count('Runoob'))
结果
123 元素个数 : 2 Runoob 元素个数 : 1
10.index
描述:index() 函数用于从列表中找出某个值第一个匹配项的索引位置
参数:value 指定的值
start 起始位置
stop 结束位置
返回值:返回这个值在列表中的位置,若未找到则抛出异常
示例1
l = ['knight','jingliyang','egon','yuanhao'] l1 = l.index('jingliyang') print(type(l1),l1) #输出结果: <class 'int'> 1
示例2
l = ['knight','jingliyang','egon','yuanhao'] l1 = l.index('kkkkk') print(type(l1),l1) #输出结果: Traceback (most recent call last): File "C:/Users/William/PycharmProjects/Knight/练习区/day3/练习1.py", line 2, in <module> l1 = l.index('kkkkk') ValueError: 'kkkkk' is not in list
11.reverse
描述:反转列表中的元素
参数:无
返回值:None (原列表会被修改)
示例
l = ['william','lisa','knight','pudding'] l.reverse() print(type(l),l) #输出结果: <class 'list'> ['pudding', 'knight', 'lisa', 'william']
12.sort
描述:对列表进行排序,如果指定参数,则使用比较函数指定的比较函数
参数:key 默认key=None,key在使用时必须提供一个排序过程总调用的函数
reverse 默认reverse=False,当reverse=True时元素的排序会按降序排序
返回值:None(原列表会被修改)
实例
#!/usr/bin/python3 list1 = ['Google', 'Runoob', 'Taobao', 'Baidu'] list1.sort() print ("列表排序后 : ", list1) #结果 列表排序后 : ['Baidu', 'Google', 'Runoob', 'Taobao']
13.cop
描述:复制列表
参数:无
返回值:得到一个复制后的新列表
#!/usr/bin/python3 list1 = ['Google', 'Runoob', 'Taobao', 'Baidu'] list2 = list1.copy() print ("list2 列表: ", list2) #以上实例输出结果如下: list2 列表: ['Google', 'Runoob', 'Taobao', 'Baidu']
14.chear
描述:清空列表中所有的元素
参数:无
返回值:无(原列表会被修改)
#!/usr/bin/python3 list1 = ['Google', 'Runoob', 'Taobao', 'Baidu'] list1.clear() print ("列表清空后 : ", list1) #以上实例输出结果如下: 列表清空后 : []
Python列表函数&方法
Python包含以下函数:
序号 | 函数 |
---|---|
1 | len(list) 列表元素个数 |
2 | max(list) 返回列表元素最大值 |
3 | min(list) 返回列表元素最小值 |
4 | list(seq) 将元组转换为列表 |
Python包含以下方法:
序号 | 方法 |
---|---|
1 | list.append(obj) 在列表末尾添加新的对象 |
2 | list.count(obj) 统计某个元素在列表中出现的次数 |
3 | list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) |
4 | list.index(obj) 从列表中找出某个值第一个匹配项的索引位置 |
5 | list.insert(index, obj) 将对象插入列表 |
6 | list.pop(obj=list[-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 |
7 | list.remove(obj) 移除列表中某个值的第一个匹配项 |
8 | list.reverse() 反向列表中元素 |
9 | list.sort([func]) 对原列表进行排序 |
10 | list.clear() 清空列表 |
11 | list.copy() 复制列表 |