序列类型
Posted im.lhc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了序列类型相关的知识,希望对你有一定的参考价值。
一.定义
序列表示索引为非负整数的有序对象集合,包括字符串,列表和元组
- 字符串是字符的
- 列表和元组是任意python对象的序列
注意 :
-
- 字符和元组属于不可变序列,而列表则支持插入,删除和替换元素
-
- 所有序列都支持迭代
二.适合所有序列的方法
s[i]
:索引运算符
s[i:j]
为切片元素符,s[i:j:stride]
为扩展切片运算符
min(s)
和max(s)
只使用于能够对元素排序的序列
sum()
只使用于数字序列
s[i] #返回第i个元素 s[i:j] #返回一个切片 s[i:j:stride] #返回一个扩展切片 len(s) #返回s中的元素数 min(s) #s中的最小值 max(s) #s中的最大值 sum(s,initial) #s中的各项的和 all(s) #检查s中的所有项是否为True any(s) #检查s中的任意项是否为True
三.字符串
1.python2提供两种字符串对象类型
-
字节字符串:字节(8bit)序列
-
Unicode字符串:Unicode字符(16bit数据)序列
python可以使用32bit整数保存Unicode字符,但此为可选特性
2.字符串的方法
s.captitalize() #首字符变大写 s.index(sub,start,end) #找到指定字符串sub首次出现的位置,否则报错 s.join(t) #使用s作为分隔符连接序列t中的字符串 s.lower() #转换为小写形式 s.replace(old, new, [maxreplace])#替换一个字符串,maxreplace为替换的次数 s.split(sep,maxsplit) #使用sep作为分隔符对一个字符串进行划分,maxsplit是划分的最大次数 s.strip(chrs) #删掉chrs开头和结尾的空白或字符 s.upper() #将一个字符串转换为大写的形式
四.列表
1.容器类型
? 任意对象的有序集合,通过索引访问其中的元素,可变对象,长度可变,支持异构(存储的类型可以不一样,字符,数字,列表等)
2.支持在原处修改
? 修改指定的索引元素,修改指定的分片,删除语句,内置方法
例如:
? l1+l2:合并两个序列,返回一个新的列表,不会修改原列表
? l1*N:把l1重复N次,返回一个新列表
? l1[1:3]=[]:置空删除
? del():内置方法删除
3.成员关系判断
in
用法:obj in container
not in
用法:obj not in container
4.列表复制
- 浅复制
l1=[1,2,3,4]
l2=l1
- 深层复制
import copy
l2=copy.deepcopy(l1)
- 利用切片生成
l2=l1[:]
5.方法
1.append() 2.count() 3.extend() #迭代后附加 4.index() #返回指定元素索引 5.insert(index,obj) #在index之前插入 6.pop(index) #取出index位置 7.reverse() #反转字符串 8.sort() #字符串排序
五.元组
基本操作和列表差不多
- 容器类型
任意对象的有序集合,通过索引访问其中的元素,不可变对象,长度固定,异构,嵌套
注意: 虽然元组本身不可变,但如果元组内嵌套了可变类型的元素,那么此类元素的修改不会返回新的元组
以上是关于序列类型的主要内容,如果未能解决你的问题,请参考以下文章