00:00
我们回家上节课内容啊,上节课呢,我们讲了元组,元组呢是一个序列,它也支持这些索引啊,切片这些东西。那跟列表是一样的,那有了列表之后为什么还要元组呢?哎,其实呢,就是因为列表可变mutable,那元组呢,它不是imutable差异化的生存空间。那具体来说,它有什么应用吗?把阿拉伯的数字转化成大写的人民币数字。那么这个东西怎么做呢?这个例子我们拿过来。我们准备运行和调试,把鼠标放到第一行上,暗红色的小点一点变亮红色。然后呢,Debug找小虫子,Debug运行调试。选择Python费啊。然后我们就使用这个调试器开始了。黄色高亮的是当前的行。
01:06
运行之后呢,我们要输入这个数字24678。然后呢,我们首先要得到万位数字,万位哎。整除万,得到万位,得到千位,得到百位,得到十位,得到个位,那现在我们其实就得到相应的。数字了。然后我们得到一个元组,位置元组,这个位置元组里面获得相应的位置,然后数字元组呢,获得数字的大写字母。现在我们就可以获得这个具体的大写的中文汉字了,鼠标放在one上,这块写的2对吧,这块呢,这个numbers呢,是这个东西,那么我用2去索引这个numbers元组,就得到了中文大写的2,这个是2。这个呢,是这个。未知元组,然后我用0去,所以得到万,所以得到2万。
02:04
2万对吧,二万二万之后注意这个位置哈,啊,2万之后是。四千,4000之后是六百,600之后是70。70之后是。8然后呢,我们再进行输出,这个时候就可以在输出的位置观察到了,哎,这就是这么一个元组的应用,有两个元组,一个是未知元组,一个是。数字元组。那我们继续看啊,继续进入这个Python游乐场,输入一个简单的东西是什么呢?2026年的3月8号。那它会自动加上小括号。为什么呢?啊,因为它是一个元组,它自动打了个派。那赋值的时候其实可以解包,比如说年,Year month和date等于什么呢?等于2026年的3月8日,那这个时候Y。
03:06
M.和D,我们就可以得到相应的赋值,也就是说在这边它是打了一个包,这边也打了一个包,然后赋值的时候呢,分别解包,就把就把分别的东西呢付过去了。那假如说啊,假如说我把后边儿。少一个这么复制是没问题,我把后边少一个行不行呢。不行,他说,Not enough to IPA.期待着3个,但只找到2个,也就是说前面你是3个,后边呢,他也期待着3个,但是呢,他只找到2个就不行了。这样不行,那我那我前面复制行不行。前面把这个改成2个行不行呢。哎,前面两个后面两个都行,那前面2个后面3个行不行。他说不行,太多值来解包了,期待两个,也就是说前面你如果是两个的话,后边是三个,他期待两个,他多出一个不知道给谁啊,容易乱,所以报了一个Y6L。
04:09
那我们现在复习一下这个赋值哈,有几种赋值,A=1,这是一个最常见的赋值啊,声明并赋值原来A没有,比如说B没有,没有,我让B等于几啊,B=5。现在B就有了,对吧,生命并赋值A=B=4,那这个是什么。连等负值A加等于6A+0 7。原来是4再加7=11 a=11,还有一种呢,A逗B=0~1,这个东西叫平行负值。它两边都需要解包,而且左边右边都应该相等。除此之外,还有一种有意思的东西叫海象运算符。海象运算符它怎么用呢?我们看一下这个它的用法,比如说A。
05:03
Mo=6,我们就会输出6,输出6A,这个时候呢,也就等于6了。它为什么叫海象运算符呢?我们可以看到这个就是一个海象的标志,这个海象有两个鼻孔,有2个象牙,所以是海象运算符。那假如说啊,我说N这个N现在是没有的,对吧。我判我不但要赋值,而且要知道这个赋值的这个值是进行判断,那怎么办?那我就判断它是不是大于等于8。是不带对牌的,因为这个东西整个是6。6不大于等于8,那么N呢,确实已经完成赋值了,如果说把这个东西改成9。然后大嘴巴它是符合的,而且N呢也完成赋值了,它就是不但有一个赋值,而且最终生成一个表达式,可以计算比较啊,输出什么的。
06:02
还有一个比如说A逗B=0逗1这个东西也可以完成赋值,那怎么完成的赋值呢?其实经历了这么一个过程,在这儿呢,加了一个卡,把这个把这个。A到B啊,直接就转成0~1了,也就是说在这块。我们直接就把这个列表转成元组了,列表可以转元组,元组可以转列表。都是内建的序列嘛,对吧。回忆一下我们这个缝合是吧,缝合我们把这个score得到之后啊。就把这个。第一个列表,第二个列表,第三个列表缝到一起了,第0项缝成第0个元素,第一项缝成第一个元素,第二项缝成第二个元素,这个时候我们可以做什么来着?比如说我们要算数学成绩等于什么呢?等于Sorted。
07:01
对谁进行排序?对Score进行排序。关键的是什么?是Lambda表达式X冒号X1。然后呢,我们让reverse。是处。这个时候数学成绩就排好了,数学成绩97,九十六,95。元组能做加减法吗?我们可以看一下说一二加上一个一周二等于什么呀?1212同样的,如果说把这个东西改成列表,就他跟列表其实是完全相同的,只不过一个是可改,一个是不可改,对吧,都是这个列表项的像连接,或者说元组像再连接到一起。那假如说乘法呢?乘法的本质其实是一个连加,对吧,本质是一个连加。
08:01
他这个跟这个。列表还是相同的。还是相同的。那乘法呢,有交换律。它也是可以交换。作为列表呢,也是完全相同的,可以说它和列表完全相同,只不过一个可变,一个不可变,那我现在想啊,它还有什么应用场景,以前我们这个写歌用的是什么呢?用的是二维列表,现在能不能用?这个元组呢,这个时候我们就把它写下来。咪咪发,SOSO, 发咪瑞。哆哆瑞咪,是这个。音高和时长对吧,然后呢就拿它去,这样就得到这首歌了。我们听一原,原著的用法和列表一样,都是非常相似的,元祖可以加法乘法,还可以排序,很简单,元组和列表都是序列,但是元组不能变。
09:25
哦,1Z教程。
我来说两句