python map和list的区别是什么
发布时间:2025-04-06 15:39:27

一、结构特征
List是存储单列数据的集合,Map是存储键值收集这样的双列数据;
List中存储的数据是有序的,值允许重复;Map中存储的数据是无序的,其键不允许重复,但值允许重复。
二、实现类
List接口有三个实现类:
1.1 LinkedList
基于链表的实现,链表内存散列,增删快,搜索慢;
1.2 ArrayList
基于数组实现,非线程安全,效率高,增删慢,搜索快;
1.3 Vector
基于数组实现,线程安全,效率低,增删慢,搜索慢;
Map接口有四个实现类:
2.1 HashMap
基于 hash 表的 Map 非线程安全、高效、支持接口实现 null 值和 null
键;
2.2 HashTable
线程安全,效率低,不支持 null 值和 null 键;
2.3 LinkedHashMap
是 HashMap 保存记录插入顺序的子类;
2.4 SortMap 接口
TreeMap,按键对其保存的记录进行排序,默认为按键值的升序排序。
三、区别
1. List 根据索引位置对集合对象进行排序,可以有重复对象,允许根据对象在集合中的索引位置检索对象,例如通过列表.get(i)获取集合元素的方法;
2. Map 每个元素都包含一个键和一个值,成对出现,键对象不能重复,值对象可以重复。
python学习网,免费在线学习python平台,欢迎关注!
下一篇 Python序列化和反序列化
