python中的四种容器

  • Post author:
  • Post category:python


  • 列表list

1、说明:列表语法结构:它是通过方括号括起来的数据序列,也可以进行重复数据的存放。

<1>、例如实验:给b列表数据,并且进行查看:

<2>、由于列表本身也是属于对象,所以,列表也可以进行嵌套处理:

<3>、列表数据的查看,可以直接查看所有序列,也可以通过索引下标来查看(注意:下标与C语言一样,从0开始标记):

语法格式:列表名称[下标]。如:

<4>、也可以多级访问到列表内部。

2、列表常用方法

<1>、append

在列表中追加数据:append( )(注意:append是在列表的末尾处追加!)

<2>、insert(index,data)(注:index是下标号,data是所要插入的数据)

在列表中指定位置,(第一参数代表就是要插入数据的索引位),追加数据:insert( )

相当于在特定的位置添加新的数据。

<3>、pop( )(与append相对应)

删除表末尾的元素:pop( )

<4>、pop(index)   (与insert相对应)

删除列表中指定位置的元素:pop( )

<5>、reverse( )

将列表里的元素进行前后顺序调换(翻转):reverse ( )

<6>、clear( )

将列表清空:clear( )

<7>、remove( )

通过元素本身将元素移除列表,并不是通过下标来移除。remove( )

<8>、sort( )

将列表里元素排序按照ASCII表进行排序。sort( )

<9>、copy( )

复制列表里的元素

例如:c = a.copy  #浅拷贝

#浅拷贝:将原对象或原数组的引用直接赋值给新对象,新数组,新对象/新数组只是原对象的一个引用。

#深拷贝:创建一个新的对象和数组,将原对象的各项属性的“值”(数组的所有元素)拷贝过来,是“值”,而不是“引用”。

<10>、extend( )

继承,合并列表。

<11>、del(变量)

删除某一变量,再次引用变量时会报错。

<12>、list遍历  for来遍历容器

<13>、set( )

去重。(前后列表类型不发生变化)

  • 集合set

1、说明:集合set,与列表类似,但是,集合不能存储重复的数据;注意:集合set中存放的数据是不能重复的,并且是没有存放顺序的,也就是没有下标的。

语法:使用的是一对大括号/花括号包含起来的一组数据。

列表也是可以转化为集合,语法:变量 = set([ 列表])

2、集合常用方法:

<1>、add( )

在集合中增加数据:add ( )

<2>、clear( )

将列表清空(与上述列表list用法一样)

<3>、copy( )

复制列表里的元素(与上述列表list用法一样)

<4>、pop( )

随机移除元素(与上述列表list用法一样)

<5>、remove( )

移除集合中的指定元素(与上述列表list用法 一样)

<6>、intersection( )

取交集(与数学中一样)A.intersection(B)

<7>、difference( )

差集(与数学中的不一样,它是指相对于某一个集合的不同之处)

<8>、unio(并集)

将两个或几个集合里的元素并起来

  • 元组tupl

1、说明:元组是固定的,一系列值(不可变数据类型)

元组在Python中,其实是列表的一种特殊的形式,如果一旦创建,就不允许改变。

语法结构:使用一对圆括号包含起来的一组数据,可以村存放重复数据,并且可以通过索引来查找相对应的值。

<1>、count( )

统计元素出现的次数。A.count(元素)

<2>、index( )

查找元素在列表中的位置(如果有重复元素,在查找位置时,先扫描到哪一个,就报哪一个元素的位置),注意,如果元素不在列表中就会报错。

<3>、在Python中,如果只有一个元素,并且该元素是一个数字,则需要在末尾加上一个逗号来表示该变量是元组,而不是int类型的数字。

  • 字典dict

为了方便数据在组合数据类型中的管理,Python还提供了一种特殊存存储数据的组合数据类型:字典。它是通过key-value键值对的形式来存储数据,可以很方便的通过key来对value进行增删改查的操作。

语法结构:

字典变量名称={“变量1”:”值”:”变量2”:”值2”,……}

定义的时候以键值对的形式定义存在,相当于给每个值取了个名字,类似于外号。

用法:

<1>、get( )

查询字典中的数据,我们可以通过名称去键来查找值,使用方括号或者get()函数:

<2>、修改字典中的指定数据,就可以根据通过指定的key直接赋值就能修改:

格式:A[“变量”]=”值”

<3>、pop( )

删除字典中的数据,通过删除指定的key对应的数据即可删除

<4>、clear( )   #与上述用法一样

<5>、copy( )    #与上述用法一样

<6>、popitem( )

从末尾开始删除一个键值对。(图中应该是从末尾开始删除一个键值对,标记错了)

字典中遍历的三种方法:

<1>、keys( )

#遍历所有键值。

<2>、values( )

#遍历所有键值所对应的值。

<3>、itmes( )

#遍历所有键值对。(键值:键值对)


四种数据类型的比较

  1. 元组Tuple是存放固定的数据
  2. 集合set中的数据插入和遍历的时间,随数据的增多而变慢
  3. 列表List中的数据插入和查询的时间,随数据的增多而变慢
  4. 字典Ddict中的数据插入和查询的速度非常快,不会因为数据太多而变慢

元组、集合和列表占用内存较少,字典占用内存较多,字典是一种通过占用空间来换取操作速度的一种数据类型。



版权声明:本文为nicejw原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。