00:00
我们将继续为大家讲解列表相关的内容,那么在本小节当中,我为大家讲解一下列表非常好玩或者非常有特色的一个东西啊,什么东西呢?我们要讲的东西叫做。分片赋值啊,分片叫列表的分片赋值。好,写错了,分片赋值列表的分片赋值实际上就是列表的分片操作和赋值操作的一个结合,但是这两种操作的结合能为列表的操作带来更加丰富的一种结果啊。来,我们来看一下列表的分片赋值是怎么回事,首先呢,在这里边我们右键新建一个文件。MY下线扣六下线零四文件,然后呢,在这里边我们写上列表的分片赋值,列表的分片列表的分片赋值。首先呢,我们先声明一个列表啊,先声明或者定一个列表啊,声明一个列表。声明一个列表,然后呢,我们在列表中啊,加入一些人物,比如说我们的heroes heroes别写hero,写girls行不行,写一下我们三国里边的的美女,Girls等于中国号,那我们里边有什么呢?有大大乔。
01:20
然后不是这个桥啊,大桥还有小桥,还有小桥。还有我们的甄姬是不是甄姬?然后呢,还有黄月英,黄月英还有张春华。张春华以及貂蝉等等,是不是?以及貂蝉等等啊,这都是三国中的美女貂蝉等等,好了,来,我们接来操作,那什么叫分片赋值呢?简单说就是把分片和赋值结合到一起去,我们用这些分片和赋值放在一起,能够得到什么效果呢?效果就是可以实现列表的可叫做可以实现列表的增删改查操作。增删改查操作也就是说你现在想加就加,想删就删,想改就改,想对列表进行什么样操作,我们都可以完成了,就使用列表分片复制操作开始。首先呢,先为大家讲解一下如何进行什么呢添加内容。
02:22
来添加列表内容。添加列表内容大家应该还记得,在上一小节为大家讲列表基本操作的时候,我跟大家说过,列表是没有办法通过索引直接增加数据的,是不是?所以列表要增加数据只能靠另外两种方式,第一种是我们现在要讲的分片赋值,第二种则是我们最后要讲到的列表函数。啊好,我们先来看一下怎么样为列表加增加内容呢?比如说我现在希望在甄姬与黄月英之间增加一个人物行不行?那在这里边,首先为了操作方便,我们先把它的索引计算出来012。
03:01
然后三,然后四,然后五好,然后呢,接下来看啊,反向索引也可以写啊,从后往前数啊好,反向索引负一。然后呢,负二。负三。负四。负五以及负六。啊,以及负六好,然后呢,我们现在希望干什么,甄姬和黄月英之间加一个数据,是不是大家看好了,怎么加呢,这样来。直接写一下我们的变量个,然后中括号分片嘛,你不是要要分片复制吗?总得分片操作吧,没错,冒号是必不可少的,然后呢,我要加一个东西,在哪加呢?咱说是不是在真经黄月英之间加,这个时候我们选定后边这个元素,也就是黄月英,说白了你这个添加方式就是在某个索引之前加啊,我写几呢,写上三啊。在三和几之间加呢?在三和三之间加,这么写可能比较奇怪,很多说这啥意思看不懂啊,这就表示我穴的位置就是三号还原英啊,要加的地方就是三号之前,所以这个时候我们加一个人物,比如说加一个孙尚香啊,加一个孙尚香好保存一下,再次打开打印我们的列表啊,打印我们的girls,大家来观察一下,和原有列表而言,甄姬和黄莹之间是否多一个人物孙尚香。
04:26
是不是,但是大家发现,哎呀不对呀,这怎么加出了三个,一个孙,一个上一个香啊,我要的是一个孙尚香啊,没错,列表分片赋值出问题就出现,这他不可以直接给一个值,你给的值必须以列表的方式出现,所以你要加个孙尚香,应该是这样写的,一个孙尚香放到列表里面,大家这次再看结果。右键运行变程序,大家看到没有,甄姬和黄位之间是不是增加了孙尚香这个值,也就是说你想在哪个位置之前加某一个值的话,只需要把它的索引就后边这个索引啊,写到我们的这个分片的开始和结束位置就可以了,两个写一样就可以了,这里表示在这个位置前面添加一个值,孙尚香啊,这个值必须以列表的方式出现,千万要记住是不是完成了列表中的增加,而且不单单可以增加一个。
05:21
我想增加多个也是可以实现的,增加多个怎么实现呢?来告诉中括号,我要这个位置不变啊,三三之间我想加两个人,我要加一个孙尚香啊,孙尚香再加一个什么,再加一个叫做呃,糜夫人啊,糜夫人就是都是刘备的媳妇嘛,来右键运行一遍。你看,孙尚香和糜夫人是不是插到了甄姬与黄莺之间?你可以再接着加来,再加一个甘夫人。来,甘夫人啊甘夫人。看见了吗?所以这种方式你是不是可以为列表中,列表中随意的位置添加呀,你想在哪加,你就把这个什么呀索引一写,然后它就会在索引前面进行增加了,所以这就是我们的什么呀,分辨赋值的第一种操作,增加啊,增加内容,增加内容的方式非常简单,直接写上我们的列表变量中括号,写上开始索引。
06:16
与结束作业啊,当然位置都写一样的,写不一样的,就另外一种操作了啊,结束作业然后干什么事呢?直接等于一个后面,注意必须是一个列表啊,必须是一个列表数据。这种方式就可以为我们什么呀,在指定位置增加内容,在这种里边需要一些注意要求啊,要注意啊,注意什么注意呢。注意,开始索引与结束索引一样啊。索引一致,那并且这样写的话,注意它是在哪加,在开始在指定吧,在指定索引之前加指定的索引之前增加内容,嗯,这就是我们的增加方式,所以用分别赋值是不是就可以实现我们之前一直没有实现的增加操作,对不对?嗯,那除了增加之外,我甚至可以进行什么呢?删除操作,可能这咋删呢?好来看一下。
07:17
法规列表当中,将我们这个添加内容的操作予以注释啊,免得影响大家好不好予以注释,然后呢,接着来看。我们下面给大家讲一下删除列表内容。删除列表内容啊,其实还是分配复制另外一种用法啊,比如说我现在希望把什么呢?我希望把甄姬删掉,就删甄姬这一个人,那怎么删呢,请注意好。首先在这里边girls找到我们的。因因为你要分辨嘛,是不是,所以你肯定要指定这个开始节日所引的位置,写哪呢?看好了,我写什么呢?从真姬开始到黄月英之前,也就是二冒号三。其实大家从这个分片能看出来啊,二冒号三其实要获取的只有真集这一个数值嘛,因为从开始位置到结束位置之前是不是二到三之前那就是二本身呗,是不是,那我希望把真集删掉怎么办呢?等于一个中括号就可以就是空列表,那这个时候程序就会使用列表中的空数据就没什么都没有替换掉你的真机,那一替换不就啥都没剩了吗?所以这次如果再次打印我们的GS变量,你就会发现真基实际上已经被我们删掉了啊G,你会发现真姬没了。
08:30
看见了吗?黄英,小乔连到一起了,甄姬已经被你删掉了。啊,就是这样,当然我们这是删除了什么指定的一个数据啊。这是删除一个数据,删除指定的一个数据,那我想删多个行不行呢?可以我们这种方式还可以删连续的,比如说我希望把小乔和黄英这这甄姬这三个都删掉,必须连续的,那我们怎么办呢?我们就选一到三这三个索引,然后干什么事儿呢?把它替换成空列表就可以,所以在代码中的实现就是这样的,看好了。
09:04
Girls加I,上面我注释了girls中高,你要穴小桥到黄原英,那就是从一开始到四之前对不对,所以一冒号四好写完了之后呢,我们在这里边注意一下。下面要做的就是重新复制扩列表了,你再看好了,这次右键运行文程序,你会发现就剩了大桥完了,就张春华了,大桥完了张春华是不是中间这三个都删掉了,哎,所以他也可以删除连续的数据啊,删除连续的数据也是可以做到的,删除连续的多个数据我们也可以说做到了,所以删除操作是不是也分片里边用到了,是不是好,那删除完了之后呢,我能够添,呃,不不是不是能够修改吗。其实也可以做到的,那在这里边修改列表内容来看一下,其实就是删了又加一个,删一个加一个删俩加俩是不是就修改了,修改列表内容,那在这里边你想改谁?比如说我希望改什么呢?我希望改一下这个我也不知道他们叫啥呀,这个真姬吧,行不行,咱把真姬改,改成另外一个人,改成谁呢?改成呃甄环行不行,那在这里边怎么甄姬是不就是甄嬛,我不太清楚啊,这个历史我不太懂啊,在里边girl斯,然后呢,中块首先你要找到真积,那真积是几?是不是二和三之间啊,是不是,所以写个二。
10:25
冒号三则表示我已经选定真基了,你要干嘛呢?我要把它替换成另外一个,所以实际上在这里边等于一个中括号里边写一个甄环啊,好像甄基就是甄环啊甄环,那这样做的效果就是什么呢?分片把它删掉了,然后又加了一个甄环进去,来右键预行面程序,你看一下甄机是不是NN打液啊,大家来看一下甄姬是不是变成了甄环,来girls加IS右键运行一遍。看甄姬是不是被我们变成甄嬛了,左右两边没变啊,依然是小乔黄元英,看见小乔黄英是不是?嗯,所以这就是修改列表内容,当然这是修改一个,这是修改一个数据。
11:05
修改一个数据,除此之外,我们还可以修改连续的多个数据,也可以做到的。来修改连续的多个数据。在里边修改连续的多个数据,那首先你要做到的就是什么呀?我先选定我要山水晶,咱要把大桥小桥给改了行不行,咱把大桥选出给改了,呃,那这样的话,首先用分片先选中它个词中号,大桥和小桥应该是零二,是不是从零开始到二之前零冒号,二选定了大桥和小桥,我要改成谁呢?你既然这两个其实已经删掉了两个,这两个写了起来,如果我给一个空列表,是不是就删两个,但我不想啊,我想把这两个删了之后换成别的两个,那这个时候你在里边再新加两个就可以了,比如说我们换成这个,这我还真不知道啊,这这三国里边大乔小乔,呃,没人了啊,我们改成改成别的吧,是不是大河和小河行不行,大河和小河啊,大河和小河。
12:04
小河行不行?好,这样来右接地行进,大家看一下大桥小桥是不是变成大河小河了,看见没有,是不是连续修改两个是不是?嗯,所以这种方式也可以连续修改多个数据,那除了修改之外,我们现在实现了添加删除修改啊,访问就用不上了啊,访问就是正常访问,使用分片是不是就可以访问了,访问就是分片嘛,是不是?啊,所以在这里边我们可以记一下增加内容是这种格式,然后呢,增加内容讲解完了之后,我们给大家讲了一个删除的操作啊。删除的时候第二种删除内容啊。删除内容的时候呢,直接是变量,然后呢,中括号里边写上开始索引。冒号结束作业。然后呢,等于一个空列表,这个时候注意它的效果就是删除了什么呀,开始所写错了啊,删除了开始索引到结束索引之间啊之间。
13:08
之间的数据,当然需要注意啊,不包含结束的。不包含结束啊,因为这是咱们特征嘛,是不是结束,所以位置嗯,搞定了,这是删除,你可以删一个,也可以删一堆,这都随你了,然后除此之后我们还给大家讲了第三种,也就是我们的修改内容,修改内容你想改几个你就删几个,是不是就可以了,变量中括号写上我们的开始索引,然后呢冒号,然后呢结束索引,你想删几个改几个,在中括号里边写上一个列表数据啊列表数据。那这种情况下啊,注意一般保持啊什么呀,删除几个添删除多少添加多少,那就是一个覆盖操作是不是啊,就是就是修改操作了,就是修改操作,嗯就好了,当然我们的查询操作其实就是分片本身了,是不是直接用分片就可以了,所以这样一来的话,我们就把我们的什么呀。
14:09
把我们的列表分片赋值介绍完了,你看有列表分片赋值是不是想加想删想改是不是都可以了,是不是啊,很多学们说,那我能不能在里边使用什么呀?跳不值能不能用呢?来给大家看一下,我们在里边是否可以使用跳步值呢?比如说我们去做一个实验行不行,做一个什么呢?做一个嗯,删除实验吧,咱删除看一下能不能删除小乔,黄莺或貂蝉这样的值好不好,那在这里边啊,尝试跳步,这个大家不知道有没有这种想法啊,尝试跳步直啊。来,在这里边直接girls,因为你要删除嘛,但是这里边不用第L的girl,从开头到结尾。是不是,那你要删除是小乔,黄英和貂蝉,那就应该是从一开始每次加两个是不是,那我们开始是一,然后呢,结束位置留空跳步只写二,然后呢,干什么你要删除中号。
15:05
来看一下能不能按照我们的要求删除小乔,黄莺和貂蝉呢?在这里边之后打印一下我们的girls就可以了,右键运行结果。看行不行,行不行是不行啊,啊在这里边不能使用跳步啊,分片赋值不可以使用跳步,很多时候是不是没写结束啊,你写了结束他也不行啊,来又再运行一遍。是不是还不行了,所以在这里边写只能是使用默认的一啊,来优电运行一遍,这是不是就可以不能使用跳步啊,所以千万记住啊,千万记住这里是不可以使用跳步的,所以分片赋值跳步不可以使用。故可以使用这个千万谨记啊好,如果使用跳步,你想能使的话就太复杂了对不对?所以分片赋值这里边需要注意一点,没看格式都没写是不是,所以不能设置跳布值啊,别设置跳布值,不然就乱套了啊好,分片赋值讲解完毕,讲解完了分片赋值之后呢,我们将为大家继续讲解一下列表的其他相关运算操作啊列表的其他运算来,我们来给大家介绍一下列表的其他运算。
16:15
列表的其他运算,哪些运算呢?其实这个字符串我们都学过啊,一个是相乘相加,还有我们的什么呢?还有我们的乘员检测运算啊,还有成员检测运算,这个是不是大家应该都见过是不是?嗯,那我们的列表里边确实也可以使用和字符串相同的这些操作,好了,那我们下面来给大家一个一个的进行测试,首先先给大家来讲一下我们的什么呢?我们的这个序列相乘吧,行不行,先想乘,因为乘号乘号写什么了,所以我们看一下这个叫做。叫做列表乘法运算。注意啊,它也有个名称叫做序列相乘啊,序列相乘其实字符串写错了啊,序列相乘或者叫序列乘法运算都行啊,序列相乘运算吧,好听点啊,相乘运算,因为我们在这里边除了列表可以使用信号之外,字符串啊,元组啊,其实都可以使用这个东西的啊,因为这些东西都有顺序,所以叫做序列相乘运算,好吧,那在列表这块,咱就叫列表相乘运算吧,好了,那我们返回我们的文件当中啊,重新建一个吧。
17:25
右键新建一个文件啊,写上我们文件麦下线扣的六下线零五文件,好OK,创建成功,然后我们来试一下我们的乘法啊,也就是相乘运算啊相乘运算。相乘运算啊,在我们学字符串的时候,大家已经知道了,在字符串中的相乘运算实际上就是把某一个值或者某一个字符串赋值N份,对不对?那列表里边是不是也是这样的呢?首先我们在这里边写一个列表啊。写一个列表。写上的什么东西?写上boys行不行?等于啊,我们写上叫做关。
18:03
雨。逗号我就少写两个了,行不行,张飞,然后逗号刘备啊。是我们桃园三结义是不是,然后呢,看好了result,接收一下预算结果boy空格乘以三或者乘以四,乘以二随你变啊,乘以都行,别成太大了啊,太大的话你占不开,主要是来打一没有result来右键运行程序,看结果你是不是得到了关羽刘备张飞一份,关羽刘备张飞两份,关羽刘备张飞三份,关羽刘备张飞四份,所以相乘预算就是获得四份相同的结果,然后他们的结果会组成一个新的列表,列类型还是列表,这个不用看吧。你可以看一下类型依然是列表啊,这个不可能因为乘法运算反而类型给变了,是不是,所以它的结果啊,依然是一个列表,这个没有变化,来运行一遍,是不是列类型列表啊,是不是好了,除了相乘之外呢,我们还有相加运算啊,相加运算。相加运算呢,和相乘运算就不太一样啊,它是叫做列表加法运算。
19:04
简单的说就是序列相加运算啊,序列相加运算说的更直白一点,就是把两个列表连成一个,咱之前是不是把两个字母串联到一起了,是不是这个也是一样,比如说我们在这里边啊,写上写上什么呢?BOYS1啊,BOYS1等于啊,我们最开始的时候只有关羽、刘备、张飞这么三个,是不是,后来呢,又有好多朋友啊,好多兄弟们在一起,什么来BOYS2啊,等于啊,什么赵云啊,马超啊,往里加行不行,我们先上赵云。然后逗号马超,然后逗号啊来黄忠啊。黄忠,好搞定,然后我希望把这两个列表合成一个,那这个时候你就可以这样做,Result等于O1加上BOY2。然后呢,打印一下我们的预算结果result,同时输出一下它的预算类型type,套上括号。
20:01
我们写上result来,大家看一下是否把它们两个列表合成了一个,是不是把BOYS1和BOYS2连到一起去了,是不是一共六个结果,这就是我们的序列相加操作是不是也很简单,对不对?序列相加完了之后呢,叫做乘员检测运算,其实这个我们在什么呀?啊,学成运算符的时候就学过in和我们的not in啊,和我们的not体in这么两个。In,其实就是在里边挪,是不是就不在里边,所以它两个叫做成员检测运算,首先呢,返回来,我们首先声明一个列表啊,写一个列表啊,成员,成员检测运算在这里边呢,我们写一个吴国的吧,行不行啊,吴国的一些人物往里边加,比如说我们写上这个,呃,孙权。逗号。孙策。逗号。再来一个孙,孙权,孙策,孙坚啊,然后还有什么跃进是不是?
21:01
乐还是乐进我也不太清楚啊,然后呢,OK,就这些了,行不行,然后我想检测一下什么呢,我想检测一下我们的大桥在不在里边就可以这样做啊,叫检测。某个值,某个。某个值是否在列表中,直接是首先result接受结果,这个毫无疑问,Result等于我们的某个值,比如说我们说了大桥,对不对,写上这个值大桥,然后呢?换一个桥吧,这个桥啊,大桥,然后in我们的吴国吗?但是在这个列表里边并没有大桥是不是?所以你预算的结果最终必然是一个force,因为大乔不在里边,所以必然是一个force。当然你要问别人,比如说我要问孙策在不在这个列表里边,那么右肩于行,结果自然为触了。来反过来,除了我们的in之外,成员检测预算还有一个叫做not体in的not in和in刚好是反向操作,它是检测某个值。
22:02
某个值叫是否不在列表中?也是不在里边,就是人在里边反射什么呀,False了,所以呢,这个时候我们再来啊,Result写一个等于比如说我们这次检测小桥。好,小乔。我们写上它not in我们的吴国这个列表,那么打印结果必然为true,因为这里边真的没有小乔,是不是符合我们要求啊,所以预算结果为true,当然你要换一个,比如说小小小乔啊,啊不,你要换一个什么呀,你要换一个存在的,比如说孙坚吧,但是孙坚在里边,那和挪梯是不是不一样啊,挪梯是不在里边才是处,而你在里边,所以我是false,看见了吗?是不是false啊?诶这样一来的话,我们的什么呢?我们的这个叫做。基本运算就介绍完了,列表其他运算就介绍完了,好吧,好了,那么我们本小节到此结束,我们下一小节继续的大家,继续为大家讲解列表的其他内容。
我来说两句