Python中的基本数据类型的区别
set集合和dict字典的区别
唯一区别:
- set没有对应的value值
相同点:
- 都无索引,不可进行切片和根据索引进行的操作
- 两者都是不可哈希的可变类型
- 两者的内部元素是可哈希的不可变类型
利用哈希算法,进行计算元素在存在的生命周期中有对应唯一的哈希值,就是可哈希,不存在就是可改变的。
set集合和list列表的区别
相同点:
- 都是可变类型
不同点:
- set集合是无序且元素唯一
- set集合取得元素只能for循环,否则因为是无序的,无索引
- list列表是有序且元素不唯一,可以根据索引进行切片
- list列表是分离式结构的动态顺序表(是有索引的原因)
顺序表分为: 一体式结构: 存储表信息的单元和存储区连续在一个存储区间。 分离式结构: 存储表信息的单元只保存容量和元素的个数,实际数据元素存储在另一个存储区,通过链接去关联。
set集合主要用于测试数据和数据的交、并、差等此类型的和去重操作
set集合本质区别和dict字典相同
list列表和dict字典的区别
相同点:
- 可变类型
- 可迭代
不同点:
- dict字典的key必须是不可变对象
- dict字典需要的存储空间大于list列表
- 查询效率字典远高于列表
tuple元组和list列表的区别
不同点:
- tuple对象创建后就不可变
- 创建对象的方式:list = [“元素”] tuple=(“元素”,)
相同点:
- 可迭代
tuple元组、字符串、数字
- 不可变类型(可哈希),不可以进行更改元素
- 元组可以包含可变类型
学而不用则罔 用而不学则殆