(四)Python:列表

列表是最常用的Python数据类型。它一种有序的集合,可以随时添加和删除其中的元素。
列表的数据项不需要具有相同的类型。
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。

list1 = ["test1","test2",1234,5.12]
list2 = [1,2,3,4,5,6]
list3 = ["a","b","c","d"]

与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。

一、列表常用操作

1.1、获取列表元素

我们可以使用下标索引来访问列表中的值,同样也可以使用方括号的形式截取(切片):

list1 = ["test1","test2",1234,5.12]
print("list1[2]:",list1[2])
print("list1[1:3]",list1[1:3])

这里写图片描述

1.2、修改/添加列表元素

我们可以直接使用索引修改列表对应位置的元素,我们可以使用append、extend、insert函数为列表添加元素。

list1 = ["test1","test2",1234,5.12]
print("原list1[2]=",list1[2])
list1[2] = 1000
print("修改后list1[2]=",list1[2])

这里写图片描述

list2 = [1,2,3,4,5,6]
#添加元素
list2.append(7)
print("list2:",list2)
#添加的元素也是列表
list2.append([7,8,9])
print("list2:",list2)

这里写图片描述
使用extend()将列表中的元素逐一添加至待添加列表中:

list3 = [1,2,3,4,5,6]
list3.extend([7,8,9])
print("list3:",list3)

这里写图片描述
注意区分append和extend添加列表时候的区别。

无论是append还是extend函数都是从列表尾部添加元素,我们使用insert(index,obj)实现任意位置的添加:

list4 = [1,2,3,4,5,6]
list4.insert(2,777)
print("list4:",list4)

这里写图片描述

1.3、删除列表元素
  • 可以使用 del 来删除列表的的元素,它根据下标删除指定元素,其实它也可以删除整个列表,但是列表不能再使用了,需要重新定义列表:
list2 = [1,2,3,4,5,6]
#删除指定元素
del list2[2]
print("list2:",list2)
#删除整个list
del list2

这里写图片描述

使用pop删除指定位置元素,删除同时会将删除元素返回:

list2 = [1,2,3,4,5,6]
n = list2.pop(2)
print("list2:",list2)
print("n = ",n)

这里写图片描述

  • remove删除首个符合条件的元素,注意不是使用索引删除元素,如果指定要删除的元素不存在于列表中则抛异常:

    list2 = [1,2,2,3,4,5,6]
    list2.remove(2)
    print("list2:",list2)
    list2.remove(7)
    print("list2:",list2)

    这里写图片描述

二、列表脚本操作符

列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。

表达式 结果 描述
[1,2,3] + [4,5,6] [1,2,3,4,5,6] 组合
[1] * 4 [1,1,1,1] 重复

三、列表截取

列表的截取和拼接和字符串类似。
list = ["C","C++","JAVA","PYTHON","PHP"]

表达式 结果 描述
list[2] JAVA 获取索引为2的元素
list[-2] PYTHON 获取倒数第2个元素
list[1:3] [“C++”,”JAVA”] 获取索引为1到2(因为包头不包尾)的元素

四、列表函数&方法

函数 描述 实例
len(list) 返回列表元素个数 list = [1,2,3,4,5]
len(list)
输出结果:5
max(list) 返回列表元素最大值 list = [1,2,3,4,5]
max(list)
输出结果:5
min(list) 返回列表元素最小值 list = [1,2,3,4,5]
min(list)
输出结果:1
list(seq) 将元组转换为列表 tuple = (1, 2, 3,4)
list1 = list(tuple)
print (type(list1))
输出结果:<class ‘list’>
list.append(obj) 在列表末尾添加新的对象
list.count(obj) 统计某个元素在列表中出现的次数
list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.index(obj) 从列表中找出某个值第一个匹配项的索引位置。
list.pop(obj=list[-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list.remove(obj) 移除列表中某个值的第一个匹配项
list.reverse() 反向列表中元素
list.sort([func]) 对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
参数:
        func – 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
list = [1,4,5,3,2]
list.sort()
输出结果:[1,2,3,4,5]
由大到小排序:list.sort(reverse=True)
list.clear() 清空列表
list.copy() 用于复制(深拷贝)列表。返回复制后的新列表。

猜你喜欢

转载自blog.csdn.net/qq_25343557/article/details/80933810