Python基础(五):列表、元组、字典、集合的比较

列表 元组 字典 集合
英文 list tuple dict set
放置元素 任意类型 任意类型 任意类型 任意类型
是否有序 有序 有序 有序 无序
可否重复 键不能重复,值可以
可否读写 读写 只读 读写 读写
动态/静态 动态,长度大小不固定 静态,长度大小固定 动态,长度大小不固定 动态,长度大小不固定
可变/不可变 可变 不可变 可变 可变
初始化(空) a=[] a=() a={} a=set()
初始化(有值) a=[1,2] a=(1,2) a= a={1,2}或a=set([1,2])
添加元素 在原列表追加元素 开辟新的元组 d= s=
a=[1,2,3] a=(1,2,3) d['age']=2 s.add(4)
a.append(4) New=a+(4,)
读元素 索引 索引 不支持索引操作,因为集合本质上是一个哈希表
a=[1,2,3] a=(1,2,3) a= 用value in dict/set判断元素在不在字典或集合内
a[-1] a[-1] a['name'] 或者a.get('name')
切片 a=[1,2,3] a=(1,2,3)
a[2:3] a[2:3]
性能 字典和集合优于列表和元组,元组优于列表
运用场景 如果存储的数据或数量是可变的,比如统计一个用户在一周内看了哪些用户的帖子,那么则用列表更合适 如果存储的数据和数量不变,比如一个函数返回一个地点的经纬度,然后传给前端直接渲染,那么选用元组更合适 对元素的高效查找、去重 对元素的高效查找、去重
posted @ 2022-02-08 15:58  是小鱼呀  阅读(84)  评论(0)    收藏  举报