Python3内置数据结构
数据结构从广义上理解,就是一组数据的存储结构
Python中的内置数据结构:列表list、元组tuple、字典dict、集合set
一、列表(list)
1.列表的每个元素可变,列表为可变类型(相对于元组和字符串是不可变类型)
2.列表是有序的,每一个元素的位置都是确定的
3.列表中元素可以是Python的任何对象(字符串、数值、元组、列表、字典等Python对象)
1.作用
记录多个值,并且存取方便
2.定义
在[ ]内用逗号隔开的任意类型的值,my_list = ["A", "B", "C"]
如果元组中只有一个元素,则要在元素后面写逗号
3.使用
方法 | 介绍 |
---|---|
my_list[index1:index2:num] | 切片取值,以num为步长,获取my_list中索引为index1到(index2)-1的值 |
my_list.index(x, index1, index2) | 查找x在列表中[index1, index2]的位置 |
my_list[index1] = val | 替换指定位置index1的值为val |
my_list.append(x) | 添加元素至列表末尾 |
my_list.extend(new_list) | 将指定列表的所有元素添加至列表末尾 |
my_list.insert(index1, x) | 指定位置插入一个元素 |
my_list.remove(x) | 从列表中删除指定值的元素 |
my_list.pop(index) | 从列表中移除指定位置的元素,并将其返回 |
my_list.clear() | 从列表中删除所有元素 |
del my_list[index1:index2] | 从列表中删除指定位置的元素 |
my_list.count(x) | 统计列表中x元素出现的次数 |
my_list.sort() | 对列表中的元素进行排序 |
my_list.reverse() | 倒排列表中的元素 |
my_list.copy() | 返回列表的浅拷贝 |
二、元组(tuple)
1.元组为不可变类型
2.列表是有序的,每一个元素的位置都是确定的
3.元组tuple,用法与list相同,但是tuple一经创建,就不可修改,没有append(),pop(),insert()等修改方法,只能对元素进行查询
1.作用
记录多个值( 元组就是一个不可改变的列表 )
2.定义
在()内用逗号隔开多个任意类型元素,T = (‘a', 'b', 'c')
如果元组中只有一个元素,则要在元素后面写逗号,T = ('a',)
3.使用
方法 | 介绍 |
---|---|
T[index1] | 索引取值 |
T[index1:index2,num] | 切片取值 |
len(T) | 长度 |
T.index(x) | 按元素名称查找位置 |
T.count(x) | 统计元素个数 |
三、字典(dict)
1.字典为可变类型
2.字典是无序的
3.字典是key对应值,其中key对value有描述性的功能
1.作用
记录多个不同属性的值
2.定义
在{ }中用逗号隔开的多个元素,每个元素都是key:value的形式,其中key是不可变类型,通常为字符串,而value可以是任意类型 ,dic = {"name":"bxb", "age":"18", "job":"teacher"}
3.使用
方法 | 介绍 |
---|---|
dic[key] | 取值:按key取值,dic["name"] |
dic.get(key, defaut) | 取值:key不存在,获取默认值,dic.get["gender", "man"] |
dic.update({key:value}) | 更新:key存在更新key对应value值;key不存在添加key及value |
dic.setdefault(key,value) | 更新:key存在时,不改变原值;key不存在时,添加该key及值。并都会返回key对应的值 |
del dic[key] | 删除:按key删除对应值value |
dic.pop(key) | 删除:按key删除对应值,并返回该key对应value |
len(dic) | 长度 |
四、集合(set)
1.集合为可变类型
2.集合是无序的
3.集合中的元素是不重复的(只针对不可变类型)
1.作用
用作关系运算
2.定义
在{ }中用逗号隔开的多个元素,Set = {"name", "age", "job"}
空集合,必须用 set() 而不是 {}
3.使用
方法 | 介绍 |
---|---|
in, not in | 成员运算 |
| | 合集 |
& | 交集 |
- | 差集 |
^ | 对称差集,相当 a-b | b-a |
>= | 父级(包含){1,2,3,4} >= {1,2,3} |
<= | 子集(被包含){1,2,3,4} <= {1,2,3} |
len() | 长度 |