• 技术文章 >Python技术 >Python基础教程

    python map和list的区别是什么

    爱喝马黛茶的安东尼爱喝马黛茶的安东尼2019-12-02 09:22:01原创3607

    一、结构特点

    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 集合中对象按照索引位置排序,可以有重复对象,允许按照对象在集合中的索引位置检索对象,例如通过list.get(i)方法来获取集合中的元素;

    2. Map 中的每一个元素包含一个键和一个值,成对出现,键对象不可以重复,值对象可以重复。

    python学习网,免费的在线学习python平台,欢迎关注!

    专题推荐:python map list 区别
    上一篇:Python序列化和反序列化 下一篇:python eval和exec的区别是什么

    相关文章推荐

    • python列表和集合的区别是什么• python数组和列表区别是什么• python apply和map区别是什么

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网