【python3数据结构篇:列表】有关列表的介绍和函数总结

前言
作者简介:大家好,我是翼同学,一名大学生。
个人主页:翼同学的CSDN博客
系列专栏:【python学习笔记】
备注:如果文章有误,请指正,万分感谢!让我们一起学习,一起进步。
✅最后:如果文章对您有帮助,请三连支持一下博主哦。

目录

  • 1.序列的概念
  • 2.列表(list)
    • 2.1.列表的创建
    • 2.2.列表的访问
    • 2.3.列表的修改
    • 2.4.列表的切片
    • 2.5.列表的删除
    • 2.6.列表的运算
    • 2.7.列表的检查
    • 2.8.列表的遍历
  • 3.列表的函数
    • min( )函数
    • max( )函数
    • len( )函数
    • list( )函数
    • reversed( )函数
    • sorted( )函数
  • 4.列表的方法
    • append()方法
    • extend()方法
    • index()方法
    • count()方法
    • insert()方法
    • remove()方法
    • pop()方法
    • clear()方法
    • reverse()方法
    • sort()方法
    • copy()方法
  • 5.关于sorted()和sort()的补充
  • 6.小结

1.序列的概念

在python中,序列是常见的数据结构。

  • 序列,指的是可存放多个值的连续内存空间

  • 序列中的元素会按顺序排列存放。
    每个元素会有一个编号,我们称之为索引。

  • 从左往右来看序列
    序列首元素的索引为0。第二个元素的索引为1,以此类推。

  • 从右往左来看序列
    序列末元素的索引为-1,倒数第二个元素的索引为-2,以此类推。

事实上,所有序列类型的都能进行某些特定的操作,比如:

  • 通过索引访问元素
  • 分片
  • 检查成员

在python中的序列包括:

  • 列表
  • 元组
  • 字符串

2.列表(list)

2.1.列表的创建

我们通过一对中括号将若干数据括起来,以此来创建列表,数据之间用逗号隔开。

list_01 = [] # 创建空列表
list_02 = [3.1415,8,666] # 简单地创建一个列表
list_03 = [[1,2,3],[4,5,6]] # 创建二维列表

注意:

  • 列表中的数据类型可以是任意的,即列表的元素不需要具有相同的数据类型。
  • 列表中的元素可以重复

2.2.列表的访问

我们通过索引来访问列表中的元素。

1)访问一维列表

v_list = [2,4,8]
n1 = v_list[0]
n2 = v_list[1]
n3 = v_list[2]
m1 = v_list[-3]
m2 = v_list[-2]
m3 = v_list[-1]
print(n1,"==",m1)
print(n2,"==",m2)
print(n3,"==",m3)

运行结果如下:

2 == 2
4 == 4
8 == 8

上述代码中,我们定义了一个列表[2,4,8]

并且列表的索引为0,1,2,或者说:-3,-2,-1

所以可以看到:

索引为0的元素和索引为-3的元素相同。

索引为1的元素和索引为-2的元素相同。

索引为2的元素和索引为-1的元素相同。

看下图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第1张图片

2)访问二维列表

d_list = [[1,2,3],[4,5,6],[7,8,9]]
var_6 = d_list[1][2]
print(var_6)

运行结果为:

6

可以看到,我们应该使用两个索引来访问二维列表。

  • 第一个索引表示选择哪一个子列表

  • 第二个索引表示选择子列表中的哪一个元素

2.3.列表的修改

我们可以对元素重新赋值,达到修改列表元素的目的。
【python3数据结构篇:列表】有关列表的介绍和函数总结_第2张图片

2.4.列表的切片

语法:

列表名[first:end:step]

注意:

  • 当我们对列表进行切片时,应该知道,切片的区间是左闭右开。即[first.end)
  • step表示切片时索引值的步长,这是可选项,默认值为1

实例:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第3张图片
当然,我们也能使用负数的索引来对列表进行切片:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第4张图片
我们也可以使用切片来修改元素值

【python3数据结构篇:列表】有关列表的介绍和函数总结_第5张图片

2.5.列表的删除

我们使用del语句来删除列表里的元素。

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第6张图片
当然,我们也能删除整个列表

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第7张图片

2.6.列表的运算

列表的乘法

将列表乘上一个整数n,就得到了新列表。新列表包含着n个重复的原列表。

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第8张图片
列表的加法

我们能通过加法法则来生成新的列表

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第9张图片

2.7.列表的检查

我们能通过关键字innot in来检查列表是否含有某元素,返回值是TrueFalse

如图:
【python3数据结构篇:列表】有关列表的介绍和函数总结_第10张图片

2.8.列表的遍历

我们可以利用循环来遍历列表的所有元素

如图:
【python3数据结构篇:列表】有关列表的介绍和函数总结_第11张图片


3.列表的函数

min( )函数

min( )函数用于返回列表的最小值

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第12张图片


max( )函数

max( )函数用于返回列表的最大值

【python3数据结构篇:列表】有关列表的介绍和函数总结_第13张图片
注意!

再使用min()函数或max()函数时,列表中只能包含可以相互比较的元素,不然会报错。

比如:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第14张图片


len( )函数

len( )函数用于返回列表的长度,即列表的元素个数

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第15张图片


list( )函数

list( )函数用于将元组或字符串转换为列表。

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第16张图片

reversed( )函数

reversed( )函数用于将列表的元素位置反向并返回重置的对象。

注意:

reversed( )函数应与list( )函数一起使用才可以返回列表。

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第17张图片


sorted( )函数

sorted( )函数用于返回已经排好序的新列表。

【python3数据结构篇:列表】有关列表的介绍和函数总结_第18张图片

从例子可以看出,原列表里的元素并未改变!


4.列表的方法

append()方法

append( )方法会在列表的末尾添加单个元素,元素可以是任何数据类型

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第19张图片


extend()方法

extend()方法用于扩展列表,可以一次性在列表末尾添加多个值。

【python3数据结构篇:列表】有关列表的介绍和函数总结_第20张图片


index()方法

index()方法用于从列表中找出与某个值第一个匹配的索引的位置

语法:

list.index(value,start,end)

参数:

  • value:匹配的值
  • start:该参数是可选的,用于表示寻找的初始位置,默认为0
  • end:该参数是可选的,用于表示寻找的终止位置。

注意

  • 若指定了startend的值,查询的区间是左闭右开,即[start,end)
  • 若找不到匹配项,就会报错

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第21张图片


count()方法

count()方法用于统计某个元素在列表中出现的次数

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第22张图片


insert()方法

insert()方法用于将某个值插入列表中

语法:

list.insert(index, value)

参数:

  • index:插入的位置
  • value:插入的值

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第23张图片


remove()方法

remove()方法用于移除列表中某个值的第一个匹配项。

【python3数据结构篇:列表】有关列表的介绍和函数总结_第24张图片

注意,若无匹配项,就报错。

【python3数据结构篇:列表】有关列表的介绍和函数总结_第25张图片


pop()方法

pop()方法用于移除列表中最后一个元素,并且返回该元素的值。

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第26张图片
当然pop()方法也能移除指定索引处的元素

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第27张图片

注意,当你指定的索引超出了列表的索引范围,或者对空列表使用pop()方法,则会引起报错。

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第28张图片


clear()方法

clear()方法用于删除列表中的所有元素,即剩下一个空列表。

【python3数据结构篇:列表】有关列表的介绍和函数总结_第29张图片
注意del语句clear方法区别

二者区别在于:

  • del语句删除整个列表时,列表就不存在了
  • clear方法删除整个列表时,列表会变成一个空列表

reverse()方法

reverse()方法用于将列表的元素全部反向存放,即翻转。

【python3数据结构篇:列表】有关列表的介绍和函数总结_第30张图片


sort()方法

sort()方法用于将列表中的元素进行排序

语法:

list.sort(reverse=False)

参数reverse 是排序规则,默认为False,即升序。

当设置reverse = True后,列表将以降序规则进行排序。

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第31张图片

降序如下:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第32张图片


copy()方法

copy()方法用于复制列表,返回一个复制后的新列表。

【python3数据结构篇:列表】有关列表的介绍和函数总结_第33张图片


5.关于sorted()和sort()的补充

事实上,关于列表的sorted()函数sort()方法都还含有另一个参数key

我们用内置函数help()查看sorted()函数的详细说明如下:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第34张图片

按照说明来看:参数key是函数类型,用来支持自定义的排序方式。

也就是说,参数key是用于提供可以作为排序依据的函数

下面举两个例子

例子一:

  • 我们用stuScore列表存放五名同学的成绩

  • 现在需要对五位同学的成绩进行排序

  • 我们自定义一个函数cmpSecond,用于返回第二个元素。

  • 然后调用列表的sort()方法

  • 指定key参数为函数cmpSecond,指定第二个元素排序

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第35张图片
例子二:

按字符串的长度进行升序排序

如图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第36张图片


6.小结

关于列表的介绍就到这里,还是得多打代码熟悉熟悉。

下面是思维导图:

【python3数据结构篇:列表】有关列表的介绍和函数总结_第37张图片


好了,列表就看到这。下一篇文章,我们来看元组

你可能感兴趣的:(【python学习笔记】,学习,c++,开发语言,数据结构)