2020年12月22日 23:34 __ _ _ _ _

文章配图

你永远要感激给你逆境的众生。

——《天气之子》

文章配图

目录:

  1. 序列类型定义

  2. 序列类型处理函数及方法

  3. 元组类型及其操作

  4. 列表类型及其操作

  5. 序列类型的典型应用场景

一.序列类型定义

序列 是具有先后关系的一组元素,因其具有先后关系,所以元素可以相同, 元素类型可以不同,切记 集合类型是不能有相同元素 的哦。
集合类型传送门: 来学Python啦,集合类型及其操作

在学Python后面的多维数据时会讲到序列是一维数据向量,按照线性排列。与数学中的序列有些类似,如:Sn,Sn-1…其n和n-1是下标,因此,Python序列类型的元素之间也是由序号来引导,通过下标访问序列的特定元素。
序列是一个 基类类型 ,简单来说,我们在编写代码时并不会直接使用序列类型,而是使用序列类型衍生出来的几种数据类型,比如 字符串类型,元组类型及其列表类型 便是序列类型的衍生。
所以序列类型的所有操作对于以上三种数据类型同样适用,以上三种数据类型又有各自独特的操作能力,所以序列是一种基础的数据类型结构。

序列类型序号的表达: 在序列类型中,元素也存在 正向递增序号的索引关系和** 反向递减序号的索引关系。 **
序号不知大家是否还记得在字符串中也遇到过,字符串中序号也是有正向递增和反向递减序号两种编号体系。
可以说字符串类型就是序列类型的一种扩展,只不过每一个元素在字符串类型中只是一个字符,而在序列类型中,其元素类型可以是任何一种数据类型
这样比较后对于序列类型的序号是不是更容易理解了呢。

二. 序列类型处理函数及方法

序列类型提供了一些操作符和一些处理函数:
6个操作符: x in s:如果x是序列s的元素,返回True,否则返回False。 x not in
s:如果x是序列s的元素,返回False,否则返回True。 s+t:连接两个序列。 sn或ns:将序列s复制n次。
s[i]:索引,返回s中第i个元素,i是序列的序号,其序号有正向递增,反向 递减两种体系。
s[i:j]或[i:j:k]:切片,返回序列s中第i到j以k为步长的元素子序。
序列类型典型的衍生类型是列表类型,所以用列表类型来举例:

实用举例:

ls=["python",123,".py"]
ls[::-1]#为一种切片操作,返回列表中所有元素,不过是返回从元素末尾提取的元素子序列,即将列表元素取反,并返回

序列类型的通用类型和方法: len(s):返回序列s的长度。
min(s):返回序列s中的最小元素,其元素是需要可比较的,否则报错。max(s):返回序列s中的最大元素。
s.index(x)或s.index(x,i,j):返回序列s从i开始到位置中第一次出现元素x 的位置。
s.count(x):返回序列s中出现x的总次数。

实用举例:

ls=["python",123,".py"]
len(ls)
s="python.py"#其列表元素为字符,在比较时也是按照字符排序来比较的
max(s)

三. 元组类型及其操作

元组是序列类型的一种扩展,其本质上还是一种序列类型,元组具有其独特的一点,元组一旦被创建,就不能被修改。
元组使用小括号()或tuple()来创建,元素间用逗号,分隔在使用元组的时候,可以使用小括号,也可以不使用。如:

实用举例:

def fun():
	return 1,2

在Python中,上述函数返回的1和2便被当作元组类型返回,至于能返回多少个元素,是由用户自己来定义的。
元组也是可以套娃的哦
文章配图
,且元组里面的元素一旦被定义,其值是不能被改变的。元组继承了序列类型的全部通用操作,即相关序列的函数,处理方法对于元组都是通用的。因为元组在创建后不能被修改,因此没有其它的特殊操作。

实用举例:

creature="dog","cat","tiger"
print(creature[::-1])
#在执行切片操作后,对于元组creature里面是元素并没有发生改变而是生成了一个新的元组值,比如:creature="dog","cat","tiger"
print(creature[::-1])
c=(123,"python",creature)
print(c[-1][0])

四. 列表类型及其操作

列表也是一种序列类型,在创建后可以随意被修改。
使用方法:方括号[]或list()创建,元素间用逗号分隔在列表中,各元素类型可以不同,无长度限制。如果我们在创建时用到了[]或函数list,那么我们便真正的创建了一个列表,相反,如果仅仅只是使用赋值,那么它只是将一段列表。
操作函数及其方法: ls[i]=x:替换列表ls第i元素为x。 ls[i:j:k]=lt:用列表lt替换ls切片后对应元素子列表。 del
ls[i]:删除列表ls中第i元素。 del ls[i:j:k]:删除列表中第i到第j以k为步长的元素。 ls +
=lt:更新列表ls,将列表lt元素增加到列表ls中。 ls *=n:更新列表ls,其元素重复n次。
实用举例:

ls=["dog","cat","tiger"]
ls[1:2]=[1,2,3,4]
print(ls)

ls=["dog","cat","tiger"]
ls[1:2]=[1,2,3,4]
print(ls)

del ls[::3]#删除步长为3,从第一个开始,即第一个,第四个
print(ls)
print(ls*2)

对于列表的操作,也可以简单理解为是对数据的操作,即增删改查。

操作函数及其方法:

ls.append(x):在列表ls最后增加一个元素x。

ls.clear():删除列表ls中所有元素。

ls.copy():生成一个新列表,赋值ls中所有元素。

ls.insert(i,x):在列表ls的第i位置增加元素x。

ls.pop(i):将列表ls中第i位置元素取出并删除该元素。

ls.remove(x):将列表ls中出现的第一个元素x删除。

ls.reverse():将列表中的元素反转。

实用举例:

ls=["dog","cat","tiger"]
ls.append(123)
print(ls)#打印结果
ls.insert(3,"human")
print(ls)
ls.reverse()
print(ls)

五. 序列类型的典型应用场景

序列类型最常用的场景是做数据展示,比如对一组数据的表示,进而进行操作。
序列其衍生类型元组类型可以表示元素不改变的应用场景,偏向用于固定搭配场景,比如返回值return。列表则更加灵活,也是最常用的序列类型。
To:因其 元组类型的元素具有不可改变 的特点,所以在对某些数据进行操作时 可以起到 保护数据 的作用。

(Python系列)未完待续…

文章配图

往期推荐:

洛谷 || 栈(C语言) 2020-12-06
文章配图

用栈解决N皇后问题(C语言) 2020-12-02
文章配图

十一月碎碎念 || 假如时间只剩31天 2020-12-01

为你,千千万万遍.

关注 程序员Bob 公众号,与你一起终生学习

一键三连,就差你了

预览时标签不可点

阅读




__