一、Python中序列的分类
1、Python中的序列主要以下几种类型:
3种基本序列类型(Basic Sequence Types):list、tuple、range
专门处理文本的附加序列类型(Text Sequence Types):str
专门处理二进制数据的附加序列类型(Binary Sequence Types): bytes、bytearray、memoryview
2、按照序列是否可被改变分类:
可变序列: list
不可变序列:tuple、str
二、Python中序列支持的操作
操作 | 结果 |
---|---|
x in s | 如果序列s中包含x对象则返回True,否则返回False |
x not in s | 如果序列s中不包含x对象则返回True,否则返回True |
s + t | 对序列s和序列t做连接操作 |
s * n 或 n * s | 等价于 n个s相加 |
s[i] | 表示序列s的第i个元素,i初始值为0 |
s[i:j] | 序列s从下标i到下标j的切片(包含s[i],但不包含s[j]) |
s[i:j:k] | 序列s从下标i到下标j的切片,且步长为k |
len(s) | 序列s的长度 |
min(s) | 序列s中的最小值 |
max(s) | 序列中的最大值 |
s.index(x[, i[, j]]) | x在序列s中从下标i开始到下标j之前范围内第一次出现的位置 |
s.count(x) | x在序列s中出现的总次数 |
三、元组
1、元组是序列类型中比较特殊的类型,因为它一旦创建就不能被修改。元组类型在表达固定数据项、函数多返回值、多变量同步赋值、新欢遍历等情况下十分有用。
2、元组(tuple)的构建方式
使用一对小括号表示空元组:()
对单个元组要使用逗号结尾:a, 或 (a, )
多个条目要使用逗号分隔:a, b, c 或 (a, b, c)
使用内置函数tuple() 或 tuple(iterable)
四、列表
1、列表功能:
函数 | 功能 |
---|---|
l = [] | 定义空列表lt |
lt += [1,2,3,4,5,] | 向lt中新增5个元素 |
lt[2] = 6 | 修改lt中的第二个元素 |
lt.insert(2.7) | 向lt中第二个位置增加一个元素 |
del lt[1] | 从lt中第一个位置删除一个元素 |
del lt[1:4] | 删除lt中第1-3位置元素 |
判断lt中是否包含数字0 | 0 in lt |
向lt中新增数字0 | lt.append[0] |
lt的长度 | len[lt] |
lt中最大元素 | max[lt] |
返回数字0所在lt中的索引 | lt.index[0] |
2、列表方法:
方法 | 说明 |
---|---|
list.append(x) | 将元素x添加至列表尾 |
list.extend(L) | 将列表L中所有元素添加至列表尾部 |
list.insert(index, x) | 在列表指定位置index处添加元素x |
list.remove(x) | 在列表中删除首次出现的制定元素 |
list.pop([index]) | 删除并返回列表对象指定位置的元素 |
list.clear( ) | 删除列表中所有元素,但保留列表对象 |
list.index(x) | 返回值为x的首个元素的下标 |
list.count(x) | 返回指定元素x在列表中的出现次数 |
list.reverse( ) | 对列表元素进行原地倒序 |
list.sort( ) | 对列表元素进行原地排序 (升序、降序) |
list.copy( ) | 返回列表对象的浅拷贝 |
五、集合
集合数据类型是没有顺序的简单对象的聚集,且集合中 元素不重复Python集合数据类型包括可变集合对象,(set)和不可变集合对象(frozenset), {}表示空的dict,因为dict也使用花括号定义。空集为 set()
集合操作符
集合处理方法
六、字典
字典(dict,或映射map)是一组键/值对的数据结构。每个键对应于一个值。在字典中,键不能重复。根据键可以查询到值对象的哈希(hash)值,字典的键只能使用不可变的对象,但字典的值可以使用不可变或可变的对象
1、字典类型操作函数和方法
2、字典功能
操作符 | 功能 |
---|---|
d = {} | 定义空字典 |
d[“a”]=1; d[“b”]=2 | 向d新增2个键值对元素 |
d[“b”]=3 | 修改第2个元素 |
len(d) | 计算d的长度 |
d.clear() | 清空d |