美文网首页
在比较中理解Python内置数据结构:list(列表)、tupl

在比较中理解Python内置数据结构:list(列表)、tupl

作者: LabVIEW_Python | 来源:发表于2018-06-22 09:51 被阅读66次

常用的Python 内置数据结构(built-in data structure)有list(列表)、tuple(元组)、dict(字典)、set(集合)

首先,Python中,一切皆对象,所以list(列表)、tuple(元组)、dict(字典)、set(集合)的一个共同点是,都是类(class),都可以用创建对象的方式,创建其对象,例如:

从上图可以看到,创建list、tuple、set和dict,从形式上看,基本一致。值得注意的细小差异是:

list:中括号[]表示

tuple:小括号()表示

set:大括号{}表示

dict:  大括号{}+关键字(key)表示。

Python为了简化这四个常见的数据结构对象的创建,且匹配其它语言中创建list、tuple、set、dict的习惯,创建list、tuple、set、dict对象,可以直接用其表达形式创建、这也是通常的做法,如下图所示:

其次,我们根据数据有否有顺序,是否能索引,是否能重复,是否能修改来对比

list:有顺序、能索引、元素能重复、能修改

tuple:有顺序、能索引、元素能重复、不能修改

set:无顺序、不能索引、元素不能重复、能修改

dict:  无顺序、用关键字(key)索引、关键字(key)、能修改。

再次:list 跟 tuple相比,tuple不能修改的特性,可以用于传递函数返回值结果;tuple的运行效率比list高很多,所以,当不需要修改的数据结构,用tuple更好,list 与 tuple 运行效率比较如下图所示:

再次: list 跟 set相比,可以利用set元素不能重复的特性来消除重复元素,例如

最后,list跟dict相比,若关心元素的顺序(order),用list;若不关心元素的顺序,关心元素的键值(value)与键字(key)的关系,用dict。

相关文章

网友评论

      本文标题:在比较中理解Python内置数据结构:list(列表)、tupl

      本文链接:https://www.haomeiwen.com/subject/tpvhyftx.html