小言_互联网的博客

python 序列详细介绍

264人阅读  评论(0)

本文部分内容源自北京理工大学的国家精品课程《pythonc程序语言设计》笔记,课程地址:https://www.icourse163.org/learn/BIT-268001#/learn/announce

序列: 序列是具有先后关系的一组元素
-序列是一维元素向量,元素类型可以不同
-类似数学元素序列:s0,s1,s2,…
-元素间由序号引导 ,通过下标访问序列的特定元素

序列类型的衍生:
1、字符串类型
2、元组类型
3、列表类型

序列类型有一个关于序号的定义,在序列类型中元素存在正向递增的序号的索引关系
序列处理函数及方法:
6个操作符:
1、x in s 如果x是序列s的元素,返回Ture,否则返回False
2、x not in s 如果x是序列s的元素,返回False,否则返回Ture
3、s + t 连接两个序列s和t
4、s* n或n* s 将序列s复制n次
5、s[i] 索引,返回s中的第i个元素,i是序列的序号
6、s[i:j]或s[i:j:k]切片,返回序列s中第i到j以k为步长的元素子序列

5个函数和方法:
1、len(s) 返回序列s的长度
2、min(s) 返回序列s的最小元素,s中元素需要可比较
3、max(s) 返回序列s的最大元素,s中元素需要可比较
4、s.index(x)或s.index(x,i,j) 返回序列s从i开始到j位置中第一次出现元素x的位置
5、s.count(x) 返回序列s中出现x的总次数

元组类型定义
元组是序列类型的一种扩展
-元组是一种序列类型,一旦创建就不能被修改
-元组因为创建后不能修改,因此没有特殊操作
-元组继承了序列类型的全部通用操作
-使用小括号()或tuple()创建,元素间用逗号分隔
-可以使用或不使用小括号

def func():
	return 1,2

函数返回了两个值1和2,实事在,在python内部,它认为函数返回了一个值,这个值是一种元组类型

>>> fruit="apple","banana","orange"
>>> fruit
('apple', 'banana', 'orange')
>>> fruit[::-1]
('orange', 'banana', 'apple')
>>> creature=(123,"animal",fruit)
>>> creature
(123, 'animal', ('apple', 'banana', 'orange'))
>>> creature[2][1]	#索引
'banana'

列表类型定义
列表是序列类型的一种扩展,十分常用
-列表是一种序列类型,创建后可以随意被修改
-使用方括号[]或lise()创建,元素间用逗号分隔
-列表中个元素类型可以不同,无长度限制

>>> ls=["cat","dog","tiger",2020]
>>> ls
['cat', 'dog', 'tiger', 2020]
>>> lt=ls  #使用赋值将列表ls赋值给lt,但并没有真正在列表中新生成一个列表
>>> lt
['cat', 'dog', 'tiger', 2020]

注意:方括号[]或list()真正创建一个列表,没有使用[]或list()就不会创建列表,赋值仅传递引用,上面的ls=lt就是将同一个列表赋给了不同的名字,ls 和 lt都指向同一个列表。
1、ls[i]=x 替换列表ls第i元素为x
2、ls[i:j:k]=lt 用列表lt替换ls切片后所对应元素子列表

>>> ls=["cat","dog","tiger",2020]
>>> ls[1:2]=["a","b","c"]
>>> ls
['cat', 'a', 'b', 'c', 'tiger', 2020]

3、del ls[i] 删除列表ls中第i元素
4、del ls[i:j:k]删除列表ls中第i到第j以k为步长的元素

>>>ls=['cat', 'a', 'b', 'c', 'tiger', 2020]
>>> del ls[::3]
>>> ls
['a', 'b', 'tiger', 2020]

5、ls +=lt 跟新列表ls,将列表lt元素增加到列表ls中

>>> ls=["a","b","c"]
>>> lt=["d","e","f"]
>>> ls+lt
['a', 'b', 'c', 'd', 'e', 'f']

6、ls*=n 更新列表ls,其元素重复n次

>>> ls=["cat","dog","tiger",2020]
>>> ls*2
['cat', 'dog', 'tiger', 2020, 'cat', 'dog', 'tiger', 2020]

列表类型操作函数和方法:
1、ls.append(x) 在列表ls最后怎加一个元素x

>>> ls=["a","b","c"]
>>> ls.append("d")
>>> ls
['a', 'b', 'c', 'd']

2、ls.clear() 删除列表ls中所有元素

>>> ls=["a","b","c"]
>>> ls.clear()
>>> ls
[]

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

>>> ls=["cat","dog","tiger",2020]
>>> ls.insert(1,"pig")
>>> ls
['cat', 'pig', 'dog', 'tiger', 2020]

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

>>> ls=["cat","dog","tiger",2020]
>>> ls.pop(1)
'dog'
>>> ls
['cat', 'tiger', 2020]

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

>>> ls=["cat","dog","tiger",2020]
>>> ls=["a","b","c","a"]
>>> ls.remove("a")
>>> ls
['b', 'c', 'a']

6、ls.reverse() 将列表ls中的元素反转

>>> ls=["cat","dog","tiger",2020]
>>> ls.reverse()
>>> ls
[2020, 'tiger', 'dog', 'cat']

序列类型的应用场景
-元组用于元素不可改变的应用场景,更多用于固定搭配场景
-列表更加灵活,它是最常见的序列类型
-最主要作用:表示一组有序舒徐,进而操作它们

元素遍历:
for item in ls:
<语句块>

数据保护:
-如果不希望数据被程序所改变,转换成元组类型

>>> ls=["cat","dog","tiger",2020]
>>> lt=tuple(ls)
>>> lt
('cat', 'dog', 'tiger', 2020)


以上内容,如有错误,敬请批评指正!谢谢!


转载:https://blog.csdn.net/qq_43636375/article/details/104606970
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场