目录
3.1还可以用pop方法取出元素后(等同于删除)但是他还能得到你取出的那个元素:
数据容器:
数据容器是一种能够容纳多份数据的数据类型,且每一个元素,可以是任意类型的数据.
根据特点不同可以分为5类:
列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)
list(列表) :
比如:储存一个人的姓名、学号、年龄等就可以这样
如果列表的内部还有列表就是嵌套列表,嵌套列表你可以就理解为二维数组,只是理解称那种形式,与二维数组还是有本质区别的
索引
与数组一样第一个元素索引为0,依次递增(这是从左向右)
当让我们也可以从右向左那么最后一个为-1,前边的依次递减
记住下标索引不能超出范围,不然会报错哦,就像数组越界一样
嵌套列表如何遍历:(与二维数组方式一样)
列表的方法:
什么是方法把函数写入class中.调用形式不一样 .方法名称(元素)进行使用
这个是查下标的,如果没有该元素就会报错
元素修改怎么办呢,与数组一样直接=写出来就好了
1.插入元素:
2.元素追加:(只能写到尾部中)
那怎么追加多个数据呢,比如一个容器里的数据,这个时候我们用
你会发现my_list1的数据到了my_list的后面
3.删除元素:
3.1还可以用pop方法取出元素后(等同于删除)但是他还能得到你取出的那个元素:
3.2用remove方法:(直接移除)
删除指定元素,如果有多个则需要多次使用.
3.3清空列表:
4.统计元素在该列表中有几个:
我这里就是统计1的个数输出为2,正确
5.统计列表中所有元素个数:
数据容器tuple(元组)
与列表很多性质都相似,但是元组的数据一旦定义不可修改
元组用()来定义.
如果定义单个元素定义,需要在该单个元素后边写一个单的逗号
元组由上述列表的嵌套,和那些方法,这里就不一一叙述了.(应为不可以修改所以上面的插入,删除,修改值均不可以用,只能用index,count,len.
注意事项:
1.不允许修改,但是你如果在元组里定义了一个list,list内的数据就可修改.
数据容器:str(字符串)
字符串是字符类型的容器(是一个不可修改的容器)
1.字符串的修改:
将字符串指定元素修改,但是应为上边说了字符串不可以修改,所以这个有返回值,即替换后的字符串,原字符串是不变的.(用replace替换也是生成新的字符串)
2.字符串的分割:
.split(")将字符串按照括号内的形式分割,也是不会修改,只是返回一个列表,该列表的元素就是分割后的元素
3.字符串的规整:
strip方法(不传入参数取出前后空格)(传入参数,去除"传入的字符串相同的字串"
注意这样删的元素要在字符串的两端.
数据容器的切片 :
序列: 内容连续、有序,可使用下标索引的一类数据容器
上述的列表、元组、字符串,均可以视为序列.
序列的常用操作---切片:
序列支持切片--从一个序列中,取出一个子序列.
因为元组和字符串是不能修改的,所以切片也是返回新的序列.
若你有多个切片操作,你可以直接在后边+[ : : ],eg:
对比第一张图片你会发现最后一个数据反了,就说明上述文字讲解正确.
数据容器: set(集合)
1.集合的基本语法:
根据上述定义来试试集合:
可以发现第一张图的重复元素在输出的时候自动就没有了,就变成只有一个了,比较两张代码会发现一样的代码但是集合的输出情况却不一样,这正好说明了集合是无序的这一特点, 既然无序,那么也就说明集合是无法通过下标索引访问的.因为每次访问的顺序可能都不一样(集合的类型是set)(所以序列是序列,集合是集合)
2.集合的常用操作:
简单的插入,删除
求长度
上述图片是上边提到过的一些操作,下面来看看新的:
2.1 取两个集合的差集:
2.2 消除差集:
2.3将两个集合合并为一个:
3.集合的遍历:
因为集合是无序的所以不能通过while循环遍历,但是可以通过for循环
数据容器: dict(字典、映射) :
1.字典的基本定义和语法:(类型:dict)
同样字典也不能重复.不能使用下标但是可以通过用key来访问value:
注意:访问时用的是[ ]而不是{}
字典的key和value可以是任意数据类型(但是key不可为字典),所以说字典是可以嵌套的.字典嵌套字典[ ][ ]嵌套几次用几个key就好了
2.字典的元素新增:
3.元素的删除:
字典名.pop("key")--->这个还可以返回删除的value;
4.字典的全部key:
总结: