假如你登录这个网站,选择你想学习的编程科目,选择你目前的水平,选择你每天学习的时长,你就可以以游戏闯关的方式开始学习。 游戏让你保持动力的测验和挑战。通过闯关游戏获得商店道具,道具对话的装备可以提高你的各项属性,从而挑战更高的难度。如果你被卡住了,可以向 ai 寻求帮助,让编程像游戏一样有趣。想要这个网站的,带你上车。
粉丝389获赞3525

pyxon 极速打基础之圆组前面我们学了列表,如果把列表想象成一块随时可以改变形状的陶土,你想捏成什么样都行。那么圆组就像是已经烧好的瓷器, 你只能把它砸碎,不能改变它的形状。程序里有些数据也是一样,天生就是不能改的,比如一年四季的顺序、身份信息等,这些都是必须固定的,不能随意修改。今天这节课,我们就来学习这个不可变的容器 圆组。圆组的英文是 tuple, 它的写法和列表非常像,列表用方括号,圆组用圆括号, 里面的元素也是用逗号分隔。圆组和列表的共同点式都是有序的,元素都有固定的位置, 可以用缩隐访问,也可以用切片。但是原组和列表有一个本质区别是,原组不能修改,你不能更改里面的元素值,不能添加元素,也不能删除元素,这就是原组的核心特点,不可变。 在程序中,创建原组的方式有以下几种,第一种,标准版原括号,里面元素用逗号隔开。第二种,不写原组。第三种,创建空原组。 此时查看 input 的 数据类型,会告诉你是原组类型,只不过里面什么也没有。特别注意的是,当你需要创建只有一个元素的原组时,如果直接这样写, python 会识别成字母串类型, 而不是原组。所以单个元素要在后面加上一个逗号,这样 input 的 类型就是原组了。以上就是创建原组的方法,那我们什么时候需要使用到原组呢? 有以下三个场景,第一,保护数据。像月份、星期这些固定不变的数据,用原组存更安全,不会被意外修改。第二,作为字典的键,列表不能当做字典的键,但原组可以。这个知识点后面学字典时会讲到。第三,打包多个数据 程序中,函数一次只能返回一个值,但如果你使用原组将多个数据打包起来,就相当于返回了多个值,这也是我们接下来要讲的。原组解包,又叫原组拆包。先看一段代码,创建一个原组, 里面有三个元素,分别是姓名、年龄和所在城市。现在我们要将这三个元素取出来,依次不只给三个变量。普通写法是使用缩影,一个一个取, 需要写三行代码。如果使用元组解包,只需要短短一行就可以搞定。它是怎么实现的呢? 我们来详细分析一下。这句代码解包就是把元组里的元素按顺序复制给等号左边的多个变量,左边有几个变量,右边元组就必须有几个元素,不能多也不能少。 当你不确定数量时,可以用星号接收剩余的元素。假如圆组有四个元素,你只想取第一个和最后一个,就可以在中间的变量前面加上星号,这样会把中间所有剩余的元素收集成一个列表。这个写法在处理不定长数据时非常方便。 解包的用处非常多,比如交换两个变量的值,不用解包,你要这样写,用一个临时变量作为中转站。代码有三行,使用元组解包一行就够。 case, 先把右边的 b a 打包成一个临时圆组,再解包复制给左边的 a b, 这种方式不需要临时变量,非常简洁。好了,这节课我们学习了什么是圆组,它的运用场景以及圆组解包,希望对你有帮助。点赞收藏,关注,下节课见!

如果你进入这个网站,找到你想学习的编程科目,选择你现在的学习水平,设置好每天的学习时间,你就可以通过玩游戏的方式学。系统有让你保持动力的测试和挑战游戏闯关顺利就可以获得更多道具和装备, 这些道具和装备可以帮你更快的通关。如果你被卡住了,可以向 ai 寻求清晰的解释。快来上车吧!

挑战一个视频,彻底教会你拍损!本视频历时十二个月,精心制作,共计一百六十八小时,带你一口气掌握 ai 人工智能拍损全站核心技术,实现新手入门金通道,月薪过万,高薪就业,成为 ai 人工智能拍损大神。 好,同学们,来,我们继续来讲解 python 的 数据类型,这一小节我们来讲解原组,好吧,原组呢?哎,在上一小节就给大家,哎,简单的说了,是吧,也就是说他其实呢,就是哎和列表是相同的,但是有一点区别是什么?就是 列表的元素是可以经过修改操作的,比如说,哎,修改元素啊,比如说这个添加元素啊,对吧,这些都是对列表去进行的一个 修改操作,对吧?那么原组呢,一旦被创建之后呢,它里面的元素就不能够被修改了,所以原组它是一个不可变的序列。好吧,好,那原组的表现形式呢?哎,我们来看一下啊,给大家写一下,我们把这里再创建一个嘛, ok, 来看一下啊, 阶段一是吧,数据类型啊,类型啊,之元组,好,这里面啊,我们把它撸到这来啊, 好, ok 了,来,我们来创建一个 demo, ok, 来,我们把它放到三双引号当中去啊,好,我们来看一下啊, 首先呢,圆组使用圆括号哎,将其包围,相邻的元素呢,用逗号隔开个数呢,也是没有限制的里面存放,哎, element 是 吧,哎,一二一直到 n 都可以。好,这是它的一个表现形式,然后要说到的就是圆组的一个创建了。好,圆组怎么创建呢?哎,我们把它复制过来啊,给大家说一下, 好,来,放到这啊,来,把该注视的地方给他加个注视。第一种方法就是使用圆括号直接创建。没有这里啊,我里面扔了一个圆括号当中呢,扔了一段的这个元素,对吧?好,那我们现在啊,来看一下啊,稍等一下,我们把这里先注视一下啊。 好,来我们来运行一下啊。第一种啊,那也就是得到的是什么,哎,你看是不是,哎,我们看一下类型啊,类型是什么呀? class 等于 tab, 是 不是这意思呀?好,下边是不是有没关的呀,这些都关一下啊, 把区间的这里也关一下,现在应该就关完了。我们这里呢也可以再来 print 一下啊, prnt t e 嘛,来看一下结果嘛。好,第一个得到的是原组,且原组的类型啊,原组的 元素都输出出来了吧,对吧?好,这是第一种方法,最简单的一种方法吧。好,那如果说啊,这里有一个点其实就是一个陷阱啊,当我们在创建一个圆组的时候,比如说有同学可能不是很理解,你看是不是一个圆组, 那么圆括号里面放置了元素对不对?不对,这不是圆组啊,来,我们运行一下,先看一下结果,这是 s t r, 这是 string, 也就是字母串,也就是说什么意思,当我们在创建圆组当中只有一个元素的时候,我们要在后边加一个符号,对吧,这样他才是圆组了, 看见没有,他现在就变成了圆组了啊,这是一个陷阱啊,很多新手啊都会遇到啊,大家注意一下你看得到的元素是不是后面加了一个逗号啊,对吧,好, 需要大家注意啊。然后我们可以使用 type 函数来创建和列表一样进行转换,比如说只有一个元素的时候,我们看一下, 哎,转换之后,你看 type 函数转换,是不是加了一个逗号啊,对吧?好,那我如果我们转列表呢,也就是把列表转成我们的圆组,这里存放了三个元素,是吧?好,我们来看一下结果,哎,结果是不是把外围的括号给它进行的转换呀?啊,好,那比如说我们想把字典进行转换呢?哎,去看一下啊, 运行一下,看一下结果是不是还是跟列表一样,会把字典的,会将字典的键当成原组的元素,对吧?会将字典的键当成 啊,原组的,原组的元素啊,这一点需要大家注意一下啊, 然后还有区间的一个转换。好,我们获取到了一到九,对不对?使用 type 函数去进行转换。来,我们来看一下得到的是不是一到九啊, ok 吧,好,这个就是关于列表创建的两种方法,一个是什么呀?使用圆括号,二个呢?使用 type 函数来进行创建。好吧,好,紧接着我们来看一下啊, 来访问列表的元素,哎,同样的,哎,这个就比较简单了,还是使用什么呀?左影和切片了。对,好,我们来直接运行啊,这就没什么细说的了, 五是得到的 u, 负五得到的。是啊,五是得到冒号,负五得到的什么是 u, 这是什么?这是切,所以你的操作获取单个元素是吧?获取连续一段的值啊,就用切片的方法就可以了。好吧, 好,紧接着是修改,哎,那刚刚有同学就问到了,是吧?你刚刚不是说这个原子它没有修改的方法吗?因为它是不可变的训练啊,为什么你要去修改它呀? 来,怎么操作啊?首先我在这里写明了,原组的元素是不能够被修改的。对,好,我们来先来运行一下,说,我们想要去删除一个元素,删除五能行吗?哎,运行一下,看一下结果不能行,为什么呀?原组对象它是不可以被修改的,不可变的元素,对吧?好,那 我们有没有方法呢?有,哎,怎么样的方法呢?你看啊, t 一 是不是一二 t 三, t 二是不是三四?我把两个原组进行相加,但是这不是修改原始的原组,这得到的是一个新的原组, ok 吧?好,我们来看一下结果。 第三是一二三四,但是你有动过这两列表吗?没有。好吧,所以这点需要注意啊,这是得到的一个新原组啊,不是修改原组啊,所以原组里面的内容大概也就这么多,因为他是不可变的,所以很多的操作他都做不了,对吧?好,来,我们继续为大家讲解, 接着要给大家说到的是什么呢?就是可变和不可变好,这个知识点呢,很多同学都存在误区,首先什么是可变?什么是不可变? 大家都知道孩子的对象呢,有三个属性,对象还有什么属性以及值,对吧?也就是地址还有对象以及值嘛,这三个属性啊,好,那么可变和不可变类型主要区别在哪呢?可变类型的对象在不改变对象身份这个身份是吧,只是内存地址的前提下改变 其包含的内容,而不可变类型的对象一旦创建了,他的内容就不可以被修改。简单来说是什么意思?可变类型的对象一旦创建了,他的内容就是那些你可以随便的 去修改里面的数据的,对不对?比如说列表啊,字典呀,啊,那不可变的呀,就相当于你创建之后就不能够被修改了,比如说整数,比如说字母串,比如说圆组,好吧, 好,我来给大家演示一下,我先演示可变,当我们对象的值发生了变化,但是内存地址没有改变,那就说明它是可变类型,对吧?好,我们来运行一下,看一下这个代码啊。好,我们再来新建一个 demo, 好 吧, 好,可变与不可变,我们把它粘到这来啊, l 一 是一二三, l 二是一二三,对不对?好,我们先来输出一下。哎,它的内存地址的值啊?多少?哎?尾号是多少?你看是不是一个二八八,一个四四零啊?好,那然后呢?我再添加一个元素之后,我们再来看一啊一现在是多少?现在是二八八, 那我们添加了值,哎,你看啊,是不是九二八?这次变了啊?这个无无所谓。好,那他经过修改之后,他是不还是九二八呀?他没有变吧,对吧?那也就说明了他是什么呀?他是可变类型,因为当对象的值发生了改变,但是他的内存地址没有改变呀, 对不对?我我,我是对这个列表进行了一个修改呀,他的元素修改了,加了一个四啊,但是他的内存地址没有被改变吧, 对吧?好,不可变是什么?当对象的值发生了变化,内存地址也随之改变,那也就是说他是不可变类型,好吧,这样去理解也行,或者说你按照我刚刚所说的是吧,就是可变类型里面是可以更改的元素的一种类型,是吧?不可变,也就是不能修改里面的元素。 好,我们来看一下啊,把它注视一下啊,然后呢,我放到这啊,这里有一个处,是吧?等于十也等于十。首先我们看一下 a 和 b 的 地址,好,这里我们先不用管它。好,来先运行一下, 哎,地址是不是一模一样啊?好,那然后呢?我 a 重新复制了,等于二十了。好,来看一下 a 的 地址变了没有,是不是变了? b 的 地址有变吗?没有变对吧?变成了三个八,这是五六八, ok 吧,这个就是关于可变和不可变他的一个含义了。好吧,好,那么我们来总结一下啊,首先哪些是不可变的?数字类型 以及字母串类型以及圆组类型,这个是不可变的,需要大家一定要记住好吗?哪些是可变的?列表,字典集合,这是可变的三种类型。好吧,那么今天呢,主要给大家讲到的就是第一个圆组,是吧?圆组的概念,它是一个不可变的列表类型。 好,第二个圆组的表现形式,它使用的是圆括号,对吧?好,第三个就是关于圆组的一个创建了, 创建提供的两种方法,第一种是使用圆括号,并且使用等于号计算符去进行赋值操作,对吧?好。第二种方法使用的是吧?使用的是 type 函数来进行转换啊,你可以把字串转换啊,字串转换需要注意一下,如果当前的元组 元素只有一个的时候,那你就需要在后边加一个逗号,好吧,好,还有就是列表的转换以及字典的转换。好,包括区间的转换,这也给大家演示过了,然后就是访问了,访问的话,哎,其实也就是通过缩影和切片的操作来进行访问 修改是修改不了的,这里其的修改其实也就是是针对一个新的原组啊,得到的是不是对原始的原组进行了修改?好吧,然后给大家讲到了 可变和不可变啊,今天的内容就给大家讲到这里了,这小节啊就讲到这里,我们继续下一小节来给大家讲解后续的章节内容。好吧, 你身边的高薪编程导师, ai 人工智能拍算系统课持续更新中。

各位好,我是阿杰。说到拍散之中的原组,大多数人想到的第一个印象就是他是不可修改的, 但实际上在一定的前提下,原组的内容以及原组的组成是可以变化的,但是只是变化的他的内在不一样而已。这里我用交互式的环境来直接演示一下就知道了。这里我在交互式环境之中直接创建了一个原组,并且把它变量命名为 a。 当我们要用原组下标的方式去修改一个原组内容,比如说我要修改这个原组的,一要把它修改成五,他会提示原组这个对象是不支持修改的。 如果我们要扩展这个原组,直接往里面加元素是不可能的,那我们可以换成思路,就两个原组相加,这里我用 a 再加上另外一个原组,就看到他会出来一个新的原组,这实际上不是修改, 这是两个对象相加,生成了一个新的对象。你如果查看 a 这个变量,你就看到 a 这个变量还是原来的值, 但是我们可以得到一个新的原组,用来进行后续的处理。如果你在编程之中可以这样操作,那除此之外,我们知道原组是一种特殊的列表,它是一种不可修改的列表,那列表又存在一种特性,就是列表可以建套,就是列表里边可以建套其他的 列表或者是字典。我这里创建一个新的原组,这个原组不再是单纯的数字,而是把第二个元素改成一个列表,这种创建方式也是允许的,你可以看到他是可以正常显示,没有报错的。那这里呢?我把这个原组 还是负给 a, 实际上是变化那种 a 的负值而已啊,在这里我可以使用它的下标引用, 把第二个元素的第一个值就是那个五,把它改成七,你会看到这种拐法是星效的, 也就是说按照这种改法体现出来的就是原组他所不可更改的特性只是在于原组的第一层,如果你在原组中见到了其他的元素,具有第二层、第三层或者更多的 那种列表的或者可修改的元素的内容,那么那个可修改元素里边的那个那种是可以修改,并不是说只要一进入原组,它里面的所有东西都不能改,这个是看具体的使用方式的。 那原组这个类型在实际开发的过程可能使用的并不是很多,因为只要你注意点列表和字典,大多数情况下已经满足要求了。那您有没有在开发写代码的过程中使用原组这个功能呢?欢迎来讨论一下。

警告,本视频耗时九个月,制作共计一千零五十六小时三十分钟,零基础自学拍摄,从基础到进阶,从入门到入狱,全套教学视频,我录的这套视频都在公开群,有需要的伙伴直接领取好了。那么我来看一下啊,我们来看一下这节课的内容, 咱们上节课对吧?上节课室友去讲那个字母串的那个函数还是挺多的啊, 所以呢,老师这里呢,就是专门给你们去整理了一个 pdf 文档,我们看一下啊,字幕串里面的这个函数可以按照核心功能进行分类整理的 啊,包含比如说字幕串的一个拼接拆分啊,还有查找替换大小写,转换、空格处理等等, 反正它的这个函数非常非常非常多啊,同学们在拍叉当中呢,它是有那个代码提示的,是不是你你可以在每一次调用的时候,就是打那个小数点的时候呢?它会提示你,对吧?你用那个,呃,你,你 比如说你去调用这个找引,你去写那个 j 给它写出来,它就会提示你有这个函数的啊,有就可以去用,没有的话就用不了,所以同学们没有必要就说每一个函数都记下来,但是你大概的要知道,对吧?哪些函数是常用的,那么它用起来的话,它的一个作用效果又是怎样的? 那么简单的去看一下啊,就这个文档它是分成了 六个类别啊,把函数分成六个类别,那是有点多啊,不是有点,都是很多了,简单介绍一下同学们怎么去看啊?看这个文档 好,比如说第一个,咱们这个拼接以及拆分最核心的操作了,都在这里了,那像这个找引的一个使用合并,它用于去将多个数据给它合并成一个大的类型,这个是很常用的一个 函数啊,那至于怎么去用呢?这里都会有这个代码示意的,就算咱们这个功能描述看不太懂啊,文字描述太多了,太累赘了,咱们就是看这个代码示意啊, 就看这个代码的例,你也知道哎,它是一个列表,列表放在哎找引它的这个小挂当中,就可以去将列表里面的两个字母串给它合并成一个大的字母串,然后它这里不是有一个拼接字母是杠吗?对不对?是因为我们在啊 合并的时候有去给它设置以杠去进行连接,做这个合并字母, ok, 那 么这个代码提示其实是非常 详细的,大家就是不管是哪一个函数呢,你都可以在这里去看到,对吧?他是怎么去用的?运行效果又应该是怎样的啊?还是非常好的一个啊。文档,大家就是课后呢,在那个群公告的第二个链接字母串那个章节里面去获取一下这个文档啊。呃,当时下课呢,老师 因为发的文档太多了啊,一次性发个五六个文档太多了,我就直接整合在群公告了,自己去查收一下,好吧, 好,那么像这个什么拆分拆分函数也是用的很多的,将一个大的数据给它通过,哎,这个逗号,对吧?逗号给它拆分成三个数据,最后拆出来之后呢,就是 a, b, c 啊, a, b, c, 你 看 是不是拆成这个样子了,那么这里注意一下啊,咱们在原有已有的这个字母串当中,它是有逗号的,对吧?那么在拆了之后呢,这个逗号就不见了,这个就好比是什么呢?就是你去吃那个西瓜,用刀给它切成几瓣,那么那个刀它是不属于西瓜的一部分, 刀就只是一个工具,他用掉了就是用掉了,对吧?那这个逗号也是同样如此啊,他是作为拆分工具,对吧?从这里去拆,从这里去拆,但拆完了他就没有了啊,他就不会在我们这个拆之后的结果当中体现出来啊,这个稍微注意一下。 好,那后面的这些就不说了,这个就是什么左左拆,从右到左的拆分啊等等的,就是细分了同一个操作,细分了其他的函数,就是供同学们可以在不同的场景之下去用啊。 好,然后第二个板块呢,就是查找以及替换,那主要是学到了这个替换函数,对不对?替换函数啊,怎么去替换的?这个就不多说了,所以里面的其实是有去涉及到的,是不是 好查找函数啊?这个查找函数是可以去找到这一个这一个字母,你比如说这个字母 x, 它在 里面的这个,呃,下标位置的,对吧?这里有个问题是什么呢?就是有的时候我们找的不是一个字母,而是多个字母,那这里的话,通过啊查找函数,它只会去返回这多个字母,它首字母的下标 它不会说,欸,你找三个字母,三个字母的下标都给你,它只会给首字母的下标啊,这里注意一下。好,其他的就是你像这个 refund, 它其实就换个方向,从右到左去查啊,包括这个 ri index 都是一样的,就换个方向 都是查找,只是说操作有点不太一样。第三个呢,是大小以及格式转换,是属于文本美化这一块的,有的时候,对吧?我们涉及到字母的时候,有大写有小写, 在 python 里面大写和小写是非常严谨的,大写就是大写,小写就是小写,所以你要把大写转换成小写啊,或者说进行其他的一个格式化。格式转换呀,哎,就会去用到一些函数啦, 比如说将这个哎大写的 hello 给他,哎,这个是小写的啊,小写的 hello 给他转换成大写的哎,则用这个函数。那么将大写的转换成小写的则用这个函数啊,就是转换格式会去用到的啊。 还有就是首字母大写的,还可以去将首字母设置为大写的首字母大写区域小写 啊,然后手每个单词手字母大写,其余小写他分的很细,看到没有啊?每一个操作都有对应的函数,是不是大小写互换,你不管你,你原来是小写,哎,我给你换成大写,你原来是小大写,我给你换成小写,就是互换的一个函数啊。 呃,这个呢,是对齐操作啊,这个就不多说了啊,这个是格式美化这一块的,就用的会比较少一些,然后空格以及字体清理这一块,这里呢就是讲到那个什么, 呃,这个 strip, strip 这个函数呢,可以记一下啊, s t r i p 的 这个函数可以去记一下,它就是可以直接去将你当前矩阵里面所带的 空格直接哎给它处理处理掉啊,给它处理成 a、 b c 左右两边的这个空格直接给你处理掉的,就不需要去用那个 replace 的 一个替换了啊,把那个什么 空格给它贴换成空,呃,虽然说也能达到一样的一个效果,对吧,但是我还是认为这个呃去除掉啊,去除掉它的一个呃空格来的更直接一些好了。那么差不太多啊,后面的都是去除,只说方向不一样。这个 l 呢就是从左边去去除,这个 r 呢就是从右边去去除。 区分了一下啊,还有判断验证的,这个就不多说了吧,太多了,我们 把前几个常用的咱们去讲一下就好了。好吧,好,这里呢,我们可以把这个文档呢当成是一个字典,同学们啊,在用到的时候哪个函数对吧?你不太清楚怎么去用的,你就查一下这个字典就好了啊,包括在用的时候哪个想不起来也可以来看一看。 还有整理成一个 png 的 一个格式, png 的 一个格式,它这个就是一个思维导图,图片,哎,你觉得看文档复杂的哎,图片也有,大家就是看这个思维导图,你知道对吧?字幕串里面的所有操作都在这里了,对应的这个函数 啊,快速的去定位到都有去上传到微盘当中,自己去查收一下。好吧,所有的这个函数分个星级就好了。星级,星级最高的就是我们在课堂上所学的那四个,那四个函数是最高的,其他的都是 同一个星级。总共就两个等级啊,我们在上课讲的就是最高的,最常用的啊,我们没讲的。那就是啊,大家就是课后去看一看就好了,不分的太细啊,不分的太细。 文件不是在那个群公告吗?大家都是在每个群里面,他有个置顶的一条消息,对吧?那条消息里面呢,是有两个链接的,一个是课时前的,一个呢是, 一个是那个七十二期资料领取出,那个是课后的,像老师每节课的这个代码呀, ppt 呀,啊,那个 markdown 啊,或者说作业啊,都已上传在第二个链接,自己去看一下。好吧, 好,那么来看一下作业,作业我们就快速过一下了,因为这一次作业是真的不难, 那个编程题的话没什么难度的,是不是就看你能不能转过弯来啊。好,那么首先呢,还是看到这个单选择题,单选择题,单选择题,我看到有的同学他选错了的原因是数错了, 那你那这个确实是你数对了,你就,哎,这道题是对的,你数错了,那这道题就是错的。那这很直接的啊, 好,最好去复数一次,复数一遍啊。好,那么第一题呢? s 呢?它里面是保存的是 hello world。 好, 那么我们通过下标为五去进取值的时候,大家知道啊,下标都是从零开始的,所以你从五去数数到的是哪个呢? 是 w 啊,不要去选 c 了啊,不对,看一下这,这道题选我数一下,零一二三四五,哎,是个空格啊。我有看到同学们选 c 啊,我有看到同学们选 c 是 w, 是 不是这道题选 b 啊?选 b 啊。第二题,第二题字母串的一个左 b 右开指的是什么? 左臂,左臂指的是左边的那个起始下标,右开指的是右边的这个结束下标,他什么意思?这道题选 c 啊,包含起始下标 他所去对应的字母,而不包含结束下标所去对应的字母,其他的都是错的啊,其他的都是啊,引导你选错误答案的选项,所以这道题能选 c。 好, 第三题 已知啊,咱们字母串是长这样子的,那么通过这个切片去进取值的话,取出的结果呢?这道题是选 a, 其他都不选啊。二, 是不是这个 t, 对 吧?然后五的话在哪呢?五的话在这个 n, 二三四五,五的话是 n, 但是五不包,所以呢? t h o, 所以 选 a。 好, 下一题,下一题。呃,这里呢,也是一个切片使用方式,但是它没有涉及到,哎,什么开始和结束,只涉及到不长的使用。讲到不长呢,就是在这个二 冒号五的时候呢,不长其实是有的,但由于它是一,可以省略掉,但为一的前提下,我们基本上就没有看到它了,是不是那除了为一以外,还可以为负一负一呢?前面是一个符号,符号表示方向 啊。符号表示方向,那可以把 a 到 g 给它从一,呃,从左到右,给它反转一下,变成从右到左,那就变成 g 到 a, 选 b 啊。 好,再来看一下第五题,第五题,第五题下列的代码当中能够去截取淘宝的是这道题呢,就直接选 a 了,你数对了,那就对了,数错了,那就错了啊。 好,那么第六题,第六题,咱们字母串呢,是讲这样子的,然后需要去截取,就是已经给到你这个代码是怎么去写了,大家可以去使用拍叉,我们将它去运行一下,对吧?啊?一到八,首先是取哪一部分字母呢?一到八,从 零开始去数一,那到八,那就应该是零,一二三四五六七八, 那他应该是要取到九的,取到这一整块是不是?好,那么这是我们正常取值的范围,然后有一个不长啊,不长, 他的符号是表示方向,那么他的这个数值他是表示间隔,那当,哎,数值为一的时候不间隔,数值为二的时候间隔一个字母,数值为三的时候是间隔几个两个,所以我们在取的时候二 五、八,每次取值跳过两个,第一次跳过三次取五,第二次跳过六七取八,所以结果呢是 b 啊,结果是 b。 第七题,第七题,这是一个列表啊,列表里面呢是三个数据, x、 y、 z 三个数据。好,那么此时呢,它很明显就是使用 java 去将这三个字母给它合并啊,通过合并函数给它合并在一起, 直接把列表呢放到小挂当中,对吧?通过连接字母加号,那很明显啦,就是连接成一个大的字母串之后, x、 y、 z 中间用加号去 并在一起,所以这道题呢是选 b 啊,哎,这里都没加号,这也没有,对吧?这个有,但是呢,你是一个数据嘛?不是,你这是有几对引号,一二三四五五对引号五个数据,那这肯定是不是了,是不是?好,第 八题,第八题,第八题啊,还是直接给它去运行就能得出结果是选 b 啊,这里呢是麦芽,这个数据,它是会返回,通过查找函数会去返回 m, 也就是它的一个首字母所去对应的下标 啊,那么运行结果就是六啊,下边值是六,所以这道题呢是选 b 啊,选 b。 好, 那么选择题呢,就给你们去讲完了,大家看一下有没有问题? o 不 ok, 能不能过哪一道题还有疑问的,就把这个问题提出来,把这个题号告诉老师啊。好,那么这个就是答案了, b c a b a b b, 咱们这个选择题的答案啊, 嗯,每一次老师把这个代码发给大家,大家知道怎么去打开这个代码吗?每次我是以 z i p 压缩包式发给同学们的,群里面都能够去看到的啊。你要先把那个代码解压之后,然后把那个文件夹给它拷贝到 当前 part 当中,就能直接打开了,一定要注意啊。 好,那么咱们选择题就讲完了,编程题就直接给他拷贝一下,复制到排序当中 来看一下啊。三道题,三道题跟切片啊,就切片用的比较多, 还有就是字母串的一个函数操作了,嗯,我们上节课就是在讲字母串的操作,对吧? 这幅算操作,讲了哪些呢?讲了哪些呢?首先第一个,第一个,哎,咱们是讲的这个下标和切片的使用,下标其实很简单,切片呢,用起来稍稍微微复杂一些 啊,因为它那个操作有点多啊,它不仅能够去固定范围取值,还可以间隔取值,还可以反向取值啊,它的这个操作会多一点,所以呢,讲了有一会儿啊,呃,然后呢,我们就讲了 a, 像一些查找函数啊,用的是 f i n d, 它叫函数,对吧?替换函数,所谓的替换其实就是等同于修改操作了,就你有一个字母上长这个样子,你把里面的某一个字母或者某一个片段,你想修改成其他的都可以,那都用到的是什么呢?这个啊, 哎,替换函数是吧?替换函数它里面呢是有一个就,哎,有个心以心替旧,两个位置不能差啊。好,再来就是一个拆分分 合,合并了,拆分长这样子,它里面呢,会有一个拆分字母 啊,就是你要以什么去拆分原用字母串,哎,最后一个是合并,合并呢,他用那个找影, 他这里呢是去放那个列表和原组啊,或者原组, 这是包含多个字母串的一个组合,就放在这个小框里面才能够被找引给它合并成一个大的字母串啊。 怎么全部去加那个井号?呃,全部加井号就是你想要哪些加井号,你给他用鼠标选中,选中之后呢,快捷键 ctrl 加斜杠啊,可以注视掉,也可以取消注视。这样子啊, 好,那么第一题,第一题,第一题呢?字母串是长这样子的,就直接把它拿下来就可以了,给他 ctrl cv 下来。 好,那么请通过下标以及切片呢去完成以下操作。这里的话我是有看到同学们,对吧?呃,通过正下标也好,负下标也好啊,就是正的切片,负的切片也好,那只需只要你取出来这个结果是对的,那都是对的,我就没有一个一个去数了。 好,那么来我们课堂上来数一下,取出首字母,那这个不用多说了,我们直接一个字母的话,那就用一个下标就可以了,对吧?下标取之方式给个零嘛。 ok, 那 么这个是首字母啊,然后最后一个字母,最后一个字母,最后一个字母呢?有的同学可能要去数啊,就是,哎,从第一个字母数到最后一个字母是多少,那他就是多少, 数到数的时候呢,有一点点麻烦的是什么呢?就如果这个字不算有点长,又很长的一个情况的话,那我们要数到猴年马月是不是?那这样子怎么办呢?这样子怎么办呢?我们可以用一个函数,一个函数 也是咱们字母串会去用到的一个函数, l、 e、 n 这个函数,那它只要把这个字母串给它放过来,那我们就可以得出一个结果, 来个变量保存一下,这个结果是什么呢?这个结果就是,哎,你这个字母串的一个长度值是多少? l、 e、 n 是 可以去获取啊,咱们这个字母串的一个总个数,总幅个数。好,我们去运行的时候呢, 这里会告诉你啊,他总共有多少个?如果你是哎,你这个长度有点长的话,对吧?有几百个字母,那他也会告诉你具体的一个啊,字母个数值是多少, 那这里还还好吗?就只有八个码,那最终我们在进取值的时候再哎,通过取最后一个 字母的时候,这个中框里面就放个解,放解放个,哎,你运算出来的一个总字母个数减掉一就好了,其实你放个七在这里也没问题, 对吧?你总的就是放个七在这里也可以,那我写的话,这个写法上能不能理解一下逻辑啊?就先去求它的一个总个数是个八,然后八减掉一嘛,那最终就是获取最后一个字母是不是 n, n 是 不是?好, ok, 那 么这里大家学到没有, 其实还有个更加简单的一个方式啊,上节课老师没有给你们去讲,对吧?啊?咱们这个下标呢,是有正下标也有负下标的,如果你要快速的去获取最后一个字母,它的下标值的话,直接给到, 直接给到什么呢?一个负一进去就可以了,为什么从 从这个,从这个左边到右边,它是正正下标,从零开始依次往后面去数。除了正下标以外呢,还有一套负的,负的是从右到左, 哎, n 对, 对应的就是负一,再往过来一点就是负二负三,那它的这个逻辑呢?是差不太多的,对吧?只是说方向不同,起始的这个值是不同的,一套是正 下标,一套是负下标,所以同学们要获取最后一个的话,负一可能来的会更快一点啊,就给到一个负一来的更快一点,对,就跟那个 x 轴一样,对吧?他已经呃已经超过那个中轴线了,是不是?那他那个呃计数的方式就会发生变化? 好,那么,哎,这个就是咱们的呃,前面这两道题,然后截取前三个,截取前三个的话, 咱们就用切片嘛,这是多个字母的获取,是不是前三个 啊?他是从零开始的,其实开始这个编号你可写也可以不写啊,这里还是写吧,然后前三个字母我们写个四就好啊,在钱包后不包。 好哦,它是从零开始的,那我们写个三就可以了啊。好,那么,哎,这个 z h a 是 不是就出来了?好,前三个啊? z h a 好, 这个还是比较简单的,直接切下一个。下一个呢, 但也是可以去数,就是数那个正缩影出来,对吧?啊,当然刚刚学了一套负缩影,我觉得,哎,确实来的更快一点。那他这里是怎么去写呢?呃, n 是 负一, a 是 负二, s 是 负三,那直接从负三开始去取, 负三取到哪里呢?负三去取到,我觉得还是正正下标会好一点,如果是负下标的话,他这里有个方向冲突的问题,我们先用正下标吧。先用正下标, 嗯,对应的 s 对 应的是五吗?那我就写个五在这里,是不是?然后再往后面的话,嗯,他后面 你可以给一个五六七啊,给个八你也可以,其实不给,对吧?他默认取到最后其实也 ok, 好, 那么这个呢?是后三个好正,所以呢,直接去数,数出来的是哪个下标值,你就给就好了。刚刚有去提到负,所以也可以去取,但是有一个问题,同学们不知道有没有遇到这个问题啊?就用负三, 哎,到哪个呢?负三是 s, n 是 几? n 是 负一对不对? n 是 负一,负一呢?它是后面这个 啊,后下标它可能有个不包的特性在这里,所以我干脆就不写,它默认就是后面有多少你就取多少,那最后呢?得到这个结果,哎,是不是也也有对不对?也有 s a s a n 对 不对?好, 对不放那个负一就可以了啊?有的同学就在疑问,老师,这个负一我写上他又不包,那怎么办呢?对吧?那直接删掉他默认取到最后就好了啊,这里要转过来啊,转过来。然后有一个问题啊,同学们有去遇到, 有少部分同学有遇到这个问题,就是说啊,出现切片取直取到了一个空的情况,有没有遇到?有没有遇到切片取直取到了一个空的情况?这个取到空的情况?我简单说一下,这是因为什么呢?这是因为我们在使用切片的时候,对吧?它是有两个方向的, 你像我们这个开始和结束,对吧?后面还有个不长值,把它补全的话,应该不长为一,是不是?好?这两个方向指的是什么呢?五八 开始到结束呢?它是第一个方向,五到八,那说明是 s 到 n, 是 从左到右的方向,从 s 到 n 的 取值是不是从左到右的方向 啊?不长为一,他也是从左到右的方向,所以这个方向是一致的,都是从左到右,那我们取出来的就有结果,当我们把这个 不长的方向改成负数,那他就就变成从右到左了,方向一旦冲突就会导致取值失败的情况,你看中间这个就取到一个空,就取值失败的情况。所以同学们呢,就是 注意下这个点,只要你掌握好这个点,任何切片,你想取哪个数据你就取哪个数据,明白,就你那个方向,不要冲突了啊,避免这个问题就好了,行不? 好了,那么,哎,咱们前面这道题呢,我们就过掉了,来第二题,第二题,第二题也是有一个啊,准备好的字母串,我们直接给他复制粘贴下来就好了。这道题是最简单的一道题了,把这个 杠给它去去除掉,是不是这道题呢?有的同学想的有点复杂,就是用那个杠先把它切成一二三,切成三块,最后呢合并成一个大的字母串, 其实还有更加简单的操作,简单到什么程度呢?就直接用这个 p、 h、 o n、 e 去掉那个替换,直接把这个杠给它替换成什么空字母串,是不就是,哎,等同于删除的效果了,是不是?好, ok, 那 么保存一下,重新更新一下 p、 h、 o、 n、 e 的 值。 好,我们再去打印一下,你看是不是就好了?这道题最最简单了,是不是? ok, 有 的同学觉得这道题最难了啊。好,我们还是就是要转过来,要灵活的去应用我们学的东西啊。 没声音了吗?应该有声音啊,应该有声音,你检查一下你自己的这个设备。好,那么最后一题,最后一题,最后一题呢?是,也是已经给到了一个字母串来, inf 这个字母串贴过来啊。好,那么首先是去除他手。

大家好呀,欢迎来到今天的 python 零基础小课堂,今天我们要学习一个特别温柔,特别稳定的数据类型, python 原组。之前我们学过可以随意修改的列表,那今天的原组就和它刚好互补,全程不用死记硬背, 零基础也完全能听懂,那我们就开始今天的学习了。首先我们来看一看,到底什么是原组呢? 大家可以把原组想象成我们的固定证件信息,比如我们的姓名、身份证号、出生日期,这些信息一旦确定下来, 就不会随便更改。对应到 python 里,原组就是一个有序不可修改的数据系列,他用小括号包裹,里面可以放数字、文字,各种各样的数据。最最大的特点就是创建之后就不能随便改动,特别稳定安全。 和我们之前学的列表不一样,列表像我们的购物车,随时可以加商品删商品。而原组就像我们的身份档案,固定不变, 这就是它最核心的特性哦。接下来我们学习怎么创建原组,方法特别简单,三种方式大家看一遍就能学会。第一种,标准,创建空眼组就像是一张空白的档案纸, 什么内容都没有。这里大家一定要注意,一个超级容易踩坑的点,只有一个元素的元组,后面必须加逗号, 比如时,如果不加逗号,它就只是一个普通数字,不是元组了。这是很多新手都会错的地方,大家一定要记牢。第二种,省略括号创建,有时候我们偷懒,不用小括号,只用逗号把数据隔开 拍散,也会自动识别成圆组,非常灵活。第三种,用突破函数转换,我们可以把四幅串列表直接转换成圆组,就像把零散的文字整理成固定答案一样, 特别方便。这一页是我们本节课的重点,原组最核心的特点,不可变。什么叫不可变呢?就是原组创建好之后,我们不能修改里面的元素,不能新增,也不能删除,就好比你的身份证信息已经录入系统了, 是不可以随意更改的。这里给大家分享一个特殊的小知识点哦。如果原组里面嵌套了列表, 那列表里面的内容是可以修改的。大家可以这样理解,档案本原组是固定的,但是档案本里面加的便利贴列表,我们是可以图改的。 正是因为不可变,所以原组的数据非常安全,在我们后续写代码保存固定数据的时候会经常用到它。虽然原组不能修改,但是我们查看 使用数据的操作都是支持的,和列表大部分用法都一样,上手特别轻松。首先是锁音访问,就像我们排队站位第一个第二个位置,我们可以精准取出原阻率的任意数据,也支持倒数取置。 然后是切片,简单说就是截取原组里的一段数据,就像我们从一整段文字里摘抄需要的内容一样。同时我们也可以辨别原组,把里面所有数据一个个读取出来,还能判断某个数据是否存在。拼接两个原组,重复原组内容, 这些基础操作都和列表一样,大家不用额外费力气。记忆刚刚说了原组不可变,所以它的方法特别少, 不用大家死记硬背,只有两个核心方法,第一个是 count 技术,比如我们统计班级类,相同姓名的同学有几个, 用这个方法就能快速统计元素出现的次数。第二个是 index, 查找位置,想知道某个数据排在第几位, 用它就能一键找到第一次出现的所有位置。除此之外,我们还有几个通用的内置函数,可以快速获取原组的长度、最大值、最小值,还能对数字的原组求和, 日常使用,完全足够了。这一页是我们本节课最实用,后续用的最多的知识点。原组解包理解成拆快递,原组就是一个打包好的快递包裹, 里面装了好几个数据解包就是把包裹拆开,把里面的东西一个个拿出来,单独复制给变量。我们可以一对一解包,快速取出所有数据,还可以利用星号批量接收多个剩余元素, 而且我们 python 里不用临时变量交换两个数。底层原理就是原组解包,特别简洁高级,后续写代码能帮我们省去超多步骤。学到了这里,很多小伙伴会分不清原组和列表,这一页我们温柔梳理一下, 大家一眼就能看懂区别。列表是可变的,灵活的,像我们的备忘录随时可以增删改。 适合存放经常变动的数据,比如购物清单、代办任务。原组是不可变的,稳定的,占用内存更小,运行速度更快。适合存放固定不变的数据,比如个人信息、固定配置坐标参数。 大家以后写代码就记住,会变的数据用列表,不变的数据用原组,完全不会用错了。最后我们结合实战,看看工作学习中到底哪里会用到原组。 首先就是保存固定信息,比如学生信息、用户资料,防止代码运行中被意外修改。其次我们写函数返回多个结果时,底层默认返回的就是原组,还有字典的键格式化、字符串 都离不开原组。大家看我们的实操案例,简单几行代码就能完成数据存储,解包统计便利,是不是特别简单实用?掌握原组能让我们的代码更规范、更安全?好了,小伙伴们, 今天的原组课程到这里就全部学完了,我们简单总结一下,我们认识了有序不可变的原组,学会了他的创业方式、基础操作常用方法, 掌握了超实用的解包技巧,也分清了原组和列表的区别、使用场景、整体知识点简单易懂,都是 python 的 核心基础内容。很多小伙伴学完列表原组之后会发现,这两种数据结构只能简单存放有序数据, 但我们生活中更多的数据都是一一对应的,比如姓名对应年龄,学号对应学生信息,账号对应密码。 那我们下一节课就给大家讲解拍散中超级重要工作,高频使用的字典,字典可以完美存储一对应的应设数据,是我们后续爬虫数据分析项目开发的核心基础,实用性超强。 想要精进拍弹学习,想要掌握全套零基础教程配套练习题源码资料的小伙伴,可以直接来找我领取全套完整学习资料,全程免费分享,带着大家从入门拍散稳步进阶,我们下期课程再见!

清华大佬终于把 python 做成了动画片,存下吧,全五百集,学完即可上岗!警告,本视频耗时六个月制作,制作时长八百分钟,陪你系统的学习 python 入门到实战,这应该是目前抖音最良心全面的入门到进阶的 python 全套教程,哪怕你是零基础也能听懂 python 要怎么样学习才正确有效?首先是基础部分,需要学习 python 软件安装、电量 运算符、循环字符、串元组。第二阶段是进阶篇,会详细讲解各种 python 进阶知识函数、面向对象、 正则表达式等知识,用最一懂的方式带你熟练使用 python, 为后面的路打下牢固的基础。三阶段技能训练会从 python 爬虫、数据分析、人工智能、办公自动化等领域展开,让你可以把所学的知识进行变现,流进你的口袋。为了让大家轻松学习 python, 我 们这套课程呢,会从语法入门篇、 语法进阶篇、全站实战篇等三大方面来讲解。语法入门篇里面包含了 python 拍唱的安装以及环境配置学习变量运算符、数据类型、控制结构函数等。语法编程语法进阶篇里面呢,我会详细讲解每一个进阶知识,从面向对象编程、异常 独立、正则表达式等知识。全站式站片会,手把手教大家练习项目,比如爬取图片、视频办公自动化、数据分析、机器学习等。最后呢,会给大家一个小福利,有搭建开发环境资料包、 python 从零到一的学习计划表,几十上百记素材、书籍、课件等等,只要你能想到的素材我这里几乎都有, 评论留言六六六即可免费打包带走,相信我,这套 python 系统课程将会是全网最齐全 最易懂的小白专用课。如果看到这对你有所帮助的话,请给老师一个免费的一键三连吧,让更多想要学习 python 的 看到这个视频吧!今天我们要讲的是 python 的 安装与使用。 passion 语言是面向对象的脚本语言,有简单易学、免费开源、可移植性强等优点。主要应用的领域有数据科学、机器学习、外部开发等技术领域,并且广泛作为编程教学语言所使用。 本节课呢,我们要学习安装并且使用 python 语言开发,在屏幕上打印出。嗨,大家好,我是小曼,从今天起,我们一起学习 python 这样的程序。 首先我们来讲解 python 的 安装和运行,以六十四位的 windows 十系统为例,在 python 的 官网上找到对应的 windows 六十四位安装包, 完成下载后运行安装包,我们选择默认的 install now 安装方式就可以了。 稍等片刻之后完成安装,点击 close 关闭安装程序。完成了 python 的 安装之后,我们新建一个文本文档,并且将文件的名字修改为 hello, 点 p y, 然后右键单机这个文件 使用 i d l e 打开就可以编辑 python 程序了。 为了将信息打印到屏幕上,我们还要学习 print 函数的使用。关于 python 的 函数我们暂时不去深究,只需要知道通过函数我们可以实现各种相应的功能。 举个例子, print 函数可以将信息在屏幕上输出打印,其中数字可以直接传入 print 后的括号内。文本需要用单引号或者是双引号把它括住,再传入 print 后的括号内, 然后通过 print 将它们输出。这里面我们要注意,这里的引号必须使用英文当中的引号。 举个例子,输出数字一二三四,开发一行代码 print 一 二三四,就可以将一二三四打印到屏幕上了。 输出今天天气真不错的时候,开发代码 print 括号单引号,今天天气真不错,就可以将这句话打印到屏幕上。这里面单引号可以替换成双引号,效果都是一样的。 在开发的工作当中,为了提升程序的可读性,并且降低后续的维护成本,需要为代码添加必要的注示来解释和说明代码的含 义。代码注示的内容呢,会被 python 解释器所忽略,不会在执行的结果当中体现出来。 pyxon 使用井号作为单行注的符号,从符号井号开始到换行为止,井号后面都是代码注,内容被解释器所忽略。 举个例子,为代码 print 今天天气不错,加上注示,注示写在该行代码后,以井号开始。为了阅读方便,我们也可以将注示单独写在一行当中。 在 python 当中,每一句的代码占一行,代码通过缩进来区分代码之间的层次。通常情况下呢,使用四个空格或者是一个 tab 作为一个缩进量。 这里呢,我们在后续学习的条件分支,循环函数等等,都会使用代码缩进来表示相应的代码块。 举个例子,一个顺序执行的 n 行代码,代码一,代码二一直到代码 n 写在了 n 行, 这些代码的第一个字母是需要对齐的,否则就没有办法变异通过。而在条件分支当中,为了表现代码结构,在代码二与代码三的前面需要有一个踏步的缩进, 回到屏幕上输出学习信息的这个问题,我们可以发现打印的信息有三行,每次使用 print 函数打印信息的时候, print 都会在最后添加一个换行符,所以我们使用三行 print 代码来完成这个程序, 打开刚刚创建的 hello 点 p y 文件,在其中开发三行代码,第一行为 print。 hi, 大家好,第二行是 print, 我是 小曼, 第三行是 print。 从今天起,我们一起学习 python。 这三行代码的第一个字母屁都在编辑器中的第一列,互相之间对齐,代码后面有相应的注式。 完成了开发之后,选择 run 菜单当中的 run 猫轴程序,就将这三行信息打印到了屏幕上。 这里面我们要注意,我们所指的屏幕,也就是通过 python 的 显示器所显示的信息,并不是说真实意义的 windows 窗口程序。 那么到这里呢? python 的 安装与使用我们就讲完了,现在来给大家留一个课后作业,使用 print 语句在屏幕上输出一个用星号所组成的五乘以五的正方形。好的,感谢大家观看,我们下节课再会。 今天我们要讲的内容是 python 的 变量与负值。 桌子上有两个杯子,其中一个杯子装有可乐,另一个杯子装有牛奶。那么如何将这两个杯子中的饮料进行交换呢? 基于上面的场景,我们要开发一个 python 程序,程序当中定义一号杯子和二号杯子这两个变量, 通过键盘输入一号杯子与二号杯子中的饮料,然后将交换前后两个杯子变量中存放的数据打印到屏幕上。 在完成这个任务之前,我们首先来讲解 python 变量与赋值的知识。 变量呢,我们可以理解为数据的名字或者是存放数据的地方。我们在编辑代码的时候可能会多次用到某个数据,而在程序中直接使用数据很不方便, 或者该数据含义不发生变化,但数值随程序的运行发生变化,这个时候我们就可以使用变量来指代或者是存放这条数据,从而实现相应的功能。 那么变量的命名我们需要遵守以下两个规则,一、只能由大小写字母、下划线和数字组成,第一个字母不可以是数字。二、不能与 python 语言本身使用的名称相同。 派森语言本身使用的名称被称为保留字,开发程序的时候不可以将这些保留字作为变量的名称。派森的保留字一共有三十三个,具体如这张图所示。 现在呢,我们来看几个具体的例子, name 下划线 name 下划线 name 九是正确的变量名,而九 name 内幕加等否是错误的变量名。因为变量不能以数字开头,不能使用除了大小写字母、数字或者是下划线以外的字母,而否是 python 语言当中的单词,也就是 python 的 保留字也不可以使用。 我们可以把变量比作一个收纳盒,这个盒子里可以放任何物品,而向盒子装东西的过程就是在为变量赋值。 变量的赋值使用等号 name 等于 python, 就是 将 python 装到名字为 name 的 盒子里,也就是将 python 赋值给 name。 回到一开始的问题,定义一号杯和二号杯这两个变量通过键盘输入一号杯与二号杯中的饮料,然后交换两个杯子变量中的数据,并且打印 在 python 当中,类似 print 函数,使用 input 函数来实现。通过键盘输入数据,在 input 的 括号当中可以添加输入时的提示语。 通过键盘为变量输入数据的时候可以写变量等于 input, 等号的左边为变量名,等号的右边是 input 函数。而通过 print 变量名可以直接将变量值打印出来, 比如说将可口可乐复制给变量格拉斯,我们可以直接写格拉斯等于可口可乐,也可以利用音符的函数从键盘输入数据为变量赋值。 比如说程序运行之后,打印了格拉斯的值为可口可乐,再根据提示从键盘输入牛奶,之后打印格拉斯的值,打印结果为牛奶。 为了交换两个杯子当中的饮料,只使用两个杯子是没有办法完成的, 因为我们必须要先把一个杯子腾空,才能将另外杯子当中的饮料倒到这个杯子中, 所以这个时候就需要引入第三个杯子作为交换饮料的临时杯。实际上呢,交换变量中的值也是同样的道理,需要引入一个临时变量才能完成两个变量当中数据的交换。 具体呢,我们来看 glass 一 变量代表杯子一,存储可口可乐, glass 二变量代表变量杯子二,存储牛奶临时杯变量 temp 是 一个空杯子,首先通过代码 temp 等于 glass 一, 将杯子一中的可乐倒入临时杯,然后通过代码 glass 一 等于 glass 二, 将杯子二中的牛奶倒入杯子一,最后通过代码 glass 二等于 temp 将零食杯当中的可乐倒入杯子二,这样就完成了两个变量中的数据交换。 现在呢,我们来看这个问题的完整代码。首先定义变量, glass 二代表杯子一,杯子二通过键盘输入两个杯子中的数据。 定义变量 temp 代表临时杯,通过 print 函数打印交换前杯子一与杯子二中的数据,然后通过临时杯 temp 交换格拉斯一与格拉斯二当中的数据, 最后再打印交换后杯子一与杯子二当中的数据。为了观察杯子当中的数据的变化,交换前后都是先打印杯子一,后打印杯子二中的数据。完成开发之后运行程序, 我们可以尝试多组输入来测试程序的正确性。到这里呢, python 的 变量与赋值就讲完了,现在给大家留一个课后作业, 开发一个用户注册程序。程序中定义昵称、密码、性别这三个变量通过音符的函数为变量赋值,最后将用户输入的信息打印到屏幕上。 好的,感谢大家的观看,我们下节课再会。今天我们要讲的内容是 python 的 关系运算。 世界杯是世界上最高荣誉与影响力的足球赛事,在小组赛当中,每支球队都要和其他三支球队进行一场比赛, 并且根据总成绩确定出现的资格。假设我们的球队进入了小组赛,小组内每个球队的战斗力是已知的,当球队赢一局的时候获得三分,平一局的时候获得一分,输一局的时候不得分。 那么最终我们的球队会取得多少分呢?程序输入我们与另外三支球队的实力,使用整数表示,例如分别是二十十二,二十三十三。 从战斗力可知,我们会赢得两场比赛,输掉一场比赛,最终输出小组赛,球队可以得六分。那么在解决这个问题之前,我们首先来学习 python 关系运算的知识。 首先我们来看 python 的 布尔数据类型,布尔型数据存储 true 与 false 两个值,并且 true 等于一, false 等于零。例如,定义三个变量, v 一、 v 二、 v 三,并赋值布尔数据打印 v 一、 v 二、 v 三,值分别为处处 false。 将 v 一 与 v 三转换为整形打印,得到处的值为一, false 的 值为零。 计算 v 一 加 v 二,结果为二, v 二加 v 三,结果是一。 part 中的关系运算有六种,分别是大于、小于、大于、等于、小于、等于、等于和不等于。 关系运算用于对常量与表达式的比较,其结果是一个布尔类型的值。当两个变量的关系比较成立的时候,返回处,否则返回 false 大于。判断左边是否大于右边,比如说一大于二,返回 false, 小 于判断左边是否小于右边,比如说四小于五。返回处,同理,大于等于,小于等于等于不等于。 分别判断关系运算符两边元素的关系,满足关系返回处,否则返回 false。 然后呢,我们回来看一下世界杯小组赛得分的这个问题。我们需要和其他三支队伍分别进行关系运算,计算战胜和占平时取得的分数,并且把它们累加起来。 举个例子,有 a 和 b 两个球队, a 战胜 b, 用 a 大 于 b 表示, a 和 b 打平,用 a 等于 b 表示。 将 a 大 于 b 的 结果转换为整数,再乘以三,也就是 a 战胜 b 时, a 取得的分数, a 等于 b 的 结果转换为整数,也就是 a 和 b 打平的时候取得的分数。 具体的呢?假设我们队的实力是 a, 另外三支队的实力是 b、 c、 d, 那 么与 b 对 比赛获得的分数是 a 大 于 b 乘以三加, a 等于 b。 在 这个表达式当中, 如果 a 的 实力比 b 大, 那么 a 大 于 b 返回一, a 等于 b 返回零,表达式的结果为三。 如果说 a 和 b 的 实力相同, a 大 于 b 返回零, a 等于 b 返回一,表达式的结果是一。如果 a 的 实力比 b 小, 则 a 大 于 b 与 a 等于 b 均返回零,表达式的结果是零。 同理呢,也可以计算和 c、 d 两个队比赛的结果,将这三个分数累加,也就是在小组赛我们队所取得的总分。 我们来看一下完整的 python 实现代码。首先,通过音符函数配合提示信息输入我们球队和三个对手球队的实力保存在 a、 b、 c、 d 四个变量当中。 最后计算我们球队与对手一比赛的分数,保存在 a、 v、 s、 b 中, 其中 a 大 于 b 乘以三,代表如果胜利将获得三分, a 等于 b 代表如果打平获得一分。同理,与另外两个队的比赛结果保存在 a v s c 和 a v s d 这两个变量当中。 再将 a v s b、 a v s c, a v s d 三个变量的值累加到 score, 最后打印小组赛结束后,球队获得的分数。 到这里呢,关系运算我们就讲完了,现在给大家留一个课后作业。小明的期末考试有三门课, 假如课程是百分制,不同的分数段积分不同,六十分以下积零分,六十到九十分积一分,九十分以上积两分。 请编写一个程序,程序输入三门成绩,然后计算并输出课程的总积分。好的,感谢大家的观看,我们下节课再会。

网上刷到过用 python 画出浪漫爱心,玩转趣味图案的小伙伴,应该都被它的魅力惊艳过。作为全球使用范围最广,人气最高的编程语言, python 不 仅能轻松实现趣味创意,更是深耕各行各业的硬核工具。 接下来我会用一辈子的时间,系统带大家从零吃透拍摄警告,本视频整整耗时一百五十天,制作总时长超两千分钟,全程陪你系统学好拍摄编程,这应该是目前全网最良心从入门到进阶的全套拍摄教程, 哪怕你是纯零基础,也完全能跟着学会。那咱们话不多说,今天讲解的是原组啊,然后我们再讲一下剩下来的这个原组 和集合。原组和集合呢,是是挺亮的啊,这个白色是这样子的。好,来看一下原组和集合操作啊,原组和集合操作 老师在上节课给你们去介绍了列表以及字典,强调了在序列使用当中,列表和字典那就是重点。剩下的这个元组和集合呢,同学们能够知道啊,我们在 python 里面 有这种训练类型,可以去用来存储数据,那就行了啊,那就行了,好,那么首先呢,我们看到的是原组,原组五分钟给你们去讲完啊, 我们还是呢把这个课间打开好,到了原组了啊, 好,原组和列表呢,没什么区别,它几乎就等同于是一个列表,原组它本身也是属于 python 里面的一种数据类型,那它呢,是一种和列表不一样的,它是一种不可变的 序列类型,不可变就是里面的数据不可以被改变, 你像列表,他是不是随便去改增删改查都可以,那原组他是不可以的,所以有时候呢,我们甚至把原组称之为只读列表。只读列表 啊,只读列表?好,那这里认识到源组他是他不可以去改的话,那么这意味着我们一旦创建了一个源组,我们不能去修改里面的内容,比如说去添加、删除、更改数据,这些操作通通没有的啊。 啊,那么如果说原组是有这种特性的话,那这种类型应该比较少用吧。哎,确实,那,那他一般是存储于一组不能够去进行修改的数据,那什么叫不 不能够被修改的数据?你打个比方,举个例子啊,你像啊,每个人的身份证号啊,像微信号啊,之前都是不能去改的,现在还能一年改两次是吧?啊?还有那些你像,哎,坐标点啊 啊?你像,我们有个坐标轴,坐标轴里面有些坐标点,这个也是固定的吗?是不是然后数据库他的一些啊,记录啊,这些记录一旦产生就不会去进行修改啊?啊?他就是永久存储的这个记录是吧? 嗯,还有像一些护照号啊,这些都是一些不能去进行修改的数据,那如果说我们存储在原组当中的话啊,它的安全性会更高一些啊。 好,那么这个就是原组,它相当于是列表,但只能去读取,只能去查找啊。啊,那么就不多说了,我们认识一下原组它怎么去操作就行了啊, 那原组的话,它和列表不同的是它是用到的哎,这个小括号去进行定义去进行创建的列表是中括号吗?字典是大括号吗?对吧? 好,那么圆组呢?你比如说长这样子的 a, 这就是一个圆组小框,里面放三个数据,数据用逗号去隔开,同样它里面的数据可以是不同类型的啊,可以是不同类型的。 ok, 我 们直接去将它粘贴一下,拿到这个地方 好,然后去运行 a, 这个就是一个圆组啊,然后我们也可以去检测一下它的数据类型, 因为讲到它也是一种,它也是一种数据类型啊,我就把它放进去好,然后看一下 它的这个单词,就是 tupu, p l e 这个 tupu 啊,表示,哎,表示为元组的意思, 就相当于列表的那个 list, 表示是列表的意思,对吧?这里也是同样如此啊。好,那这个是原组,不多说啊。 好,然后紧接着再往后面去认识一下原组的一些注意点。这里就有一个啊,就讲到有时候我们在定义原组的时候呢,它里面只有一个数据十,只有一个数据十,那注意一定要在后面去加一个逗号, 一定要加,一定要加,你不加这个逗号会产生其他的问题。我这里来个 t 二 里面去存储数据,数据呢,我就存个十一。好,你看清楚,我是没有在他后面去加上逗号的,所以我在检测检测这个 t 二他的数据类型的时候, 咱们猜一下它会变成什么类型。右键去运行的时候 a, 它就不再是个 tupper, 而是 int 类型,听到没有,它是一个 int 类型,这是因为什么?这是因为什么?这是因为里面放的这个数据十一,它就是个 int 类型, 即使他被放到小挂当中,他也没有办法被当成一个圆组存储在啊,存储在这个 t 二当中,那怎么办呢?那怎么办呢?必须要在后面去加上一个逗号, 把它改成 t 三,再去打印一下 t 三一定一定要加逗号,加上逗号之后呢,它才是个啊,这个原组类型的,原组类型,所以同学们注意一下啊。就是啊,原组,注意, 原组保存一个数据时,必须要加上逗号去进行存储啊。 ok, 好, 这个就是我们认识原组以及创建原组, 只读列表,存储不可变的数据。 ok, 也是一种数据类型啊。 top, 好, 那么这个就是任选组, 刚刚老师提到了,他只是一个只读列表,所以接下来要去讲的关于原组的其他常用操作,那就只有一个了,原组的函数操作 就只有查找,其他的,你像增加呀,删除以及修改这个都不行啊,都不能去改变这个原组本身的结构啊。好,他的操作只有查找, 那查找的话,它是有去支持下标啊,切片呀和 index 这个函数,那就不多说了,演示一下 index 就 可以了啊,下标和切片都是一样的,套到函数里面就 ok 了。来个 t 三里面去存储数据, 数据呢,是长这样子的啊,好简单。使用 t 三 直接调用 index, 它的使用方法也是一样的,调用这个函数的话,你要找哪个数据,你就把这个数据丢进去。 好,那么这里就会去得到该数据,索取对应的下标值。就是二啊。好,其他就没有了,其他就没有了,这个就是原组,大家就是认识一下啊,之后常见的场景是在你像我们,嗯, 我们去使用 python 里面内置的一些函数,内置的函数,这他定义好的一些函数,你直接去用,那他可能返回给你的这个数据值。哎,可能就是以原组类型返还给你的啊。就这种场景, 你看到原组的话,你会比较常见,其他的就没了。一般我们如果啊,你想要去选择多个数据存储序列当中的话,你也不会去选原组,因为你存进去了,你就不能改了。那我选它干什么呢?我选个列表,对吧?我选个字典是不是更好一点? 好,那么这个是原组啊,开认识一下就行了,原组就过掉了。好吧,原组就过掉了。

花三万买的 python 系统课程,手把手教学,学完即可就业,存下吧,真的很难找全了。注意,本视频耗时三千零九十四分钟,共两百零六集,从零开始,系统陪你学习 python, 这可能是抖音目前最良心的入门到进阶的 python 保姆级教程了,看完本套课程,你就离上岸不远了,为了让零基础的朋友学起来没有负担,你们的学习思维导图, 还有视频中使用到的素材、软件安装包,教程配套的课间笔记,以及一百本拍摄教程书籍 pdf 版等,留言打卡学习即可全部打包带走。如果看到这里对你有帮助的话,请给老师一个免费的一键三连吧,让更多想学习拍摄的小伙伴们看到这个视频。接下来我们开始正式的学习吧! 接着呢,我们来认识一下源组,那源组呢,和列表是比较相似的,他们都是有序的系列,可以包含不同类型的元素。 那列表和圆组他们有共同的特点,就是有序且可以包含不同类型的元素。但是呢,他们最大的区别在于,圆组是不可变的。 那什么意思呢?就是圆组啊,我们放进去里面的数字呢,就会被保护起来,不可变,就好像我们用钢笔写在纸上一样,一旦写上去呢,又擦不掉,也改不了。 那原组也是这样子,一旦你创建了原组呢,里面的元素就被固定下来,你不能再改变它。 原组还有的特性就是有序性啊,那所以呢,我们可以像列表一样,通过缩影去访问它的元素, 就是我们可以通过他的下标值对每一个元素进行访问,例如我的原组,我要访问下标为零,那他呢就会返回你第一个元素,那我要访问原组下标为负一呢,他也会对应的返回你最后一个元素。 那我们同时呢,也可以使用切片的方法来获得原组的指甲,比如说我要获得原组从一 开始到三,那我在里面写一冒号三,然后呢会返回一个包含元组第二个和第三个的元素新元组, 那他就是可以通过切片的形式来获取元组的字迹。那跟我们列表使用切片也是类似的,那他呢,当最后一个也是钱包互补包的结构, 但因为他的不可变性呢,我们不能像列表那样进行添加元素,删除元素和修改元素啊,就是呢,我们如果直接通过缩影复制来修改元素,这是不可以的,那任何这样子的操作呢,都会导致报错。 那原组还有的特性呢,就是它的止毒性啊,那他确保数据在运行过程中呢,不会被意外修改,从而呢保证了数据的完整性和一致性。那如果说我们不小心在原组里面进行某些修改,那他呢是不允许的, 所以他可以保护我们的数据不被意外的修改。那这呢使原组非常适合组成那些不应该被修改的数据。常量数据啊, 就比如说我们的身份证号啊,或者说一些固定的数值啊,都可以通过原组进行一个保护。 那像我们代码里演示的呢,创建一个圆组,就是直接通过拨号的形式把对应的值把它放进去,然后通过圆组的下标呢,我们可以对每一个圆组进行一个访问啊, 那既然圆组他是那么死板不能修改的,那我们为什么要需要他呢?那他的优点就在这里啊,在编程中呢,不可变性,有时候呢也是比可变性更有价值的。 那首先第一点就是保护数据的安全,这是原组最核心的优势啊,你可以想象一下,有些数据呢,我们希望他是绝对安全的,不能被轻易改变的,就好像一个人的身份证号,或者说 一些固定的参数,那使用原组来储存这些数据呢,就像把它们放进了一个保险箱里,并防止在程序其他地方被意外修改,导致了数据的完整性。 那在多线城编程或一些大项目中呢,就更加重要了,当很多人大家一起操作的时候,那为了防止被其他人意外的修改,那通过原组进行保护呢,那就可以防止整个出错啊, 它可以避免因意外的数据篡改而导致难以追踪的一些错误。 第二个优点呢,就是它的性能优化,因为原组不可变,所以 python 解释器可以对它进行一些优化。原组在内存上占用通常呢比列表更轻, 并且呢访问速度也更加快。对于那些需要频繁访问但不需要修改的数据呢,我们就可以通过源组啊,对性能来进行一定的提升。那源组呢,还有一个特性,它就是可以作为一次点的键, 因为他的不可变性啊,他就可以来保护字典的键。列表呢是可变的,所以呢是不能作为字典的键。而圆组呢是不可变的,所以啊,可以作为字典的键。这使得呢,我们可以创建更复杂的数据类型啊, 就像图中所示啊,那像我们的代码,我们要去写一个坐标值,坐标那他字典上的键呢?我们就可以通过原组去来表达, 然后对应的数据,然后当我们使用原组里面的某个键的时候,那他也会返回我们对应的数值啊, 那我们在使用函数返回值的时候呢,原组也常用于函数返回值的多个场景,就好像一个函数可以返回一个原组,它的状态和它的结果,那它的状态呢?表示操作成功了, 那我们就可以更方便的通过解包来获取这两个值。那现在呢,我们就来学习下如何创建元素啊。首先呢我们来看一下最常规的创建方式,那创建呢,包含多个元素的元素, 那就像我们把一袋子不同的水果装在一起,我们呢只需要一对英文的括号啊,把这个元素包裹起来,然后元素之间呢用逗号分隔开来就行了, 就好像我们把一堆水果放进一个篮子里一样,可以直接进行一个创建,那这个呢是最常用也最直接的创建方式。 那接下来呢,我们还可以创建一个空圆组啊,就像我们好像准备了一个空袋子,随时呢往里面装东西。那创建空圆组呢,也是比较简单的,只需要英文括号把它括起来,那在编程中呢, 我们需要就像一个函数需要返回一个圆组,但在呢某些情况下,没有数据可返回,就可以返回一个空圆组。 那要注意的一个重要知识点呢,是创建只包含一个元素的元素时候呢,这里有个关键是什么?就是要有逗号啊, 一定要有逗号,当元素只有一个元素时,我们必须在这个元素后面加上逗号,因为呢,在 python 中,一对单独的括号啊,主要是用来改变运算顺序的, 就类似于四则运算一样。如果你在一个括号里呢,比如单独放一个数字,那他呢?艾森认为你可能只是想强调某个数字啊, 而不是创建一个圆组。那什么才是圆组呢?那这个逗号就是一定需要的逗号,就像圆组的身份证啊,哪怕里面只有一个元素,只需要你加上逗号,就等于告诉拍子,这是一个圆组,而不是一个普通的数字, 你可以把它想象成一个人排队啊,即使只有一个人,那他呢,也要站在这个逗号上面, 这样呢,他才知道他是在排队,而不是随便乱站。所以呢,我们要记得在写圆组的时候,如果说只有一个圆组,那一定要在结尾加上逗号,告诉 python 这是圆组,而不是只是单独的某个括号。 那现在呢,我们来创建一下圆组啊,先创建一个新的我们家圆组, 圆组的创建,那我们先来了解一下,创建一个 新圆组啊,那我们来创建一个新的圆组,就在首先,比如说我们要想象他是一个巨大的空袋子,我们创建圆组, 它呢就想象成是一个空袋子,然后我们可以在里面放多种的元素,比如说我们要放 放,我们在里面放各种水果,那我们就通过一个括号,然后在里面放元素,像苹果 英文格斗,每个标点都是通过英文,然后在里面加各种元素,香蕉 里面呢?放完各种元素之后呢?那当我们去打印 print, 那我们打印了之后呢?返回值,它就会把每个元素都返回给我们,这就是我们创建好的一个圆组啊, 那如果说我们要访问其中的某个元素啊,那我们也是可以通过一个下标值进行访问的,比如说我们要访问第一个元素, 就我们要访问苹果,那我们只要在里面放这个下标为零,那我们打印一下,那他是不是就会返回给我们这个 我们想要访问的那个下标为零的元素啊?那他呢?跟列表一样的,也是 圆组是有序的,可以通过下标进行访问元素, 那我们还可以创建一个空圆组啊,创建空圆组, 那我们创建一个空圆组,那很简单,就是通过这个括号的包裹,那他呢?我们去打印一下,他就会返回我们一个空圆组啊, 那这样呢?我们为什么要创建这个空圆组呢?那有的时候,我们以后用到函数的时候,当我们需要圆组,但是呢他没有一定的返回值,我们就可以通过这个空圆组把它放在里面, 那还有呢需要注意点,嗯,创建单个圆组啊,单个圆组的圆组,那这时候呢,我们一定要注意啊,逗号, 这是我们创建圆组,它就像圆组的一个身份证,告诉 python, 你 创建的是个单 单独的一个元组,而不是一个括号,或者只是一个数字,比如说我们在里面放一个数字,那一定要通过这个逗号来告诉 python, 那 这个呢就是单元组,元组啊创建, 那通过这种形式呢?那我们这样子, 那通过逗号的形式呢?我们创建的才是元素啊,如果说没有这个逗号,那他们就是 只是强调里面的这个数字,而不是创建一个圆组。所以说要记得在我们创建圆组的时候,需要进行一个逗号,就我们可以去看一下 and 我 们呢可以通过查看数据类型,然后我们在里面放这个, 你看他告诉我们返回的是原组啊,这是原组的那个英文啊,就如果说呢, 我们在这里,比如说我们括号里面放一个单独的元素,我们来比较一下,那我们再查看一下它的类型, 我们打印一下看到没?那它只是一个数字类型, 那一个呢就是圆组类型,一个就是数字类型,两个呢就可以看出它的区别,那它后面加个逗号的时候,它就会返回这个圆组,是不是它就变成圆组类型,但是当它没有逗号,那它只是一个数字类型, 虽然说原组是不可变的,那并不意味着呢,我们不能对它进行操作,我们也是可以对它进行各种独的操作, 那这些操作呢?不会改变原组本身啊,只是获取它的信息。就好像第一个我们可以访问元素与列表完全相同,我们可以通过缩影来访问原组中的单个元素,那缩影呢?从零开始, 例如数字零,他会返回原组第一个元素,那我们也可以用负,所以然后他也会对应的返回负的最后一个元素。 那切片呢?我们同样是可以使用切片操作来获取原组的次序链, 那语法为圆组也是从起始到结束,然后到不长的,这个呢是跟我们学习列表的时候操作是一致的,这会返回一个包含从起始所以到结束,然后再减一的。所以的新圆组啊, 就像数字,我们要获取切片这个缩影一到三的元素,那我们取放括号里面放一冒号四,那他会返回包含元素的第二、第三个和第四个元素, 那他也是做到这个钱包后不包啊。切片操作呢,是比较灵活的,我们可以快速获取圆组的前第几个元素,或者后面的第几个元素,或者每隔几个去进行一个取值啊, 那同样呢,我们圆组也是可以获取长度的,我们可以通过这个棱函数去对圆组的长度进行获取, 他呢会返回原组数据的元素数量,那我们同样呢是可以使用判断的关键词来检测一个元素是否存在于原组中, 例如呢,某个数字会返回一个布尔值,表示数字是否是原组中的其中一个, 那我们也是可以用到布尔的一个判断。我们同时还可以使用加号运算符啊,将两个圆组连接成一个新圆组, 那使用乘号运算符呢?可以将一个圆组重复多次。需要注意的是,这些操作都会生成一个新的圆组,而圆圆组呢是保持不变的, 那这些呢,也体现了原组指读的特性,它允许我们灵活的查看和处理原组数据,同时保证了原始数据的安全。那我们来看一下原组操作, 那像我们现在要创建一个原组啊, 那我们来访问单子元素元素,那访问元素呢,就像我们创建一个圆组, 那我们给它创建圆组,我们创建圆组, 那现在呢,我们要去访问每个单独的元素,那就是通过我们的下标值可以进行访问,那比如说呢,我们要访问下标值是零,那我们就跟 和列表访问一样,我们只需要加上这个元素的名次,然后加上这个下标值,那是不是就 这是我们下标为零的元素就给它访问出来,那也是一样的,当我们要访问最后一个元素,那我们是不是就是访问下标值为不一样? 是不是我们的最后一个元素,这个五十, 你通过下边纸呢?我们可以对原组进行单个原组的访问,那除了访问单个原组呢,我们同样是原组,也是可以进行切片,切片操作,那我们进行原组的切片的话呢,就是 原组切片,一样是从从起始, 从起始冒号到结束,再跟冒号再到不长,是不是?那我们也是 通过这样的写法呢去访问元素,比如说我们要获得这里面的二十、三十、四十,那我们怎么写呢?是不是就直接去进行一个访问, 然后给他括号里放二十是第一个开始,那四十呢?是不是三? 下标值是三,那我们钱包后不包的来去访问,那是不是就访问到原组的这个 二十、三十、四十就是从第一个到第三个, 然后第四个呢?是包不包含的?我们就访问这样的元素,就可以访问其中某一个切片。同样呢我们也是可以进行一个不长的访问, 就比如说我们从开始到结束,那我们不长为二,那就会每隔一个碰一个, 那就是相隔一个进行一个访问,那是不是也是这个不长也是一样的操作?当我跟我们学习列表时,访问的元素,他的每个切片操作也是一样的,那同样的我们也可以访问原组的一个, 我们要访问圆组的长长度,圆组长度访问啊,那我们就要用到这个去进行一个访问,那我们在里面呢直接括号里面加上这个 我们要访问的对象,那我们是不是就获得了它的长度啊?那它的长度呢?就是这个五啊, 那我们访问的这个圆组,它的长度就告诉我们,你可以通过这个函数去进行一个访问它长度的方式, 那我们的圆组呢?还有什么特性?我们的圆组它还可以进行一个嵌套啊,那我们的圆组呢是可以进行一个嵌套的, 那就像我们可以在圆组里面嵌套一个圆组啊, 那我们可以在里面,比如我们放一些数据, 那我们就可以嵌套的形式去进行访问,那比如说我们要访问这个四十,那我们是不是就去找 八零一二三,是不是下标值是三的这个圆组,然后它的下标值是零,那我们是不是就可以访问对应的它的这个值是四十,那我们找我们需要的元素, 那同样呢,我们的圆组里面还可以放什么圆组里一样也可以放列表, 你可以换列表, 那我们如果说要访问列表中的某个元素啊,在源组中列表某个元素,我们也是可以用到这个 下标值,那我们访问这个二十,是不是就是下标值一 和零,我们就获得了里面原组嵌套的数据啊?又获得了这个数据进行一个原组的访问,那原组它还可以包含什么?还可以嵌套,那同样呢也可以进行一个 字典的嵌套,那我们首先呢给他圆组嵌套字典,那这个形式呢? 你给他里面放十, 那我们比如里面放字典, 我们可以往里面放字典的形式要勾好勾开,我们打印呢, 我们打印也是一样的,会进行一个直的返回。啊,圆组整个直返回,那圆组呢还可以作为字典的键, 圆组作为字典键,那它的好处呢?就是保护啊键的安全,那它呢这个键就不会轻易的被修改掉, 就好像我们需要有个固定的数值,比如我们要往里面放,那我们可以通过 圆组就作为这个键,然后再写对应的值, 那我们呢可以通过访问它对应的元组获得这个键去访问它的值, 就像我们要访问第一个元素的值,那我们可以通过这个键获得它的数据, 那在字典中呢就可以去进行这个, 那你就可以进行一个 打印一下呢,就可以获得它对应的这个我们要的这个值。啊, 那它在字典中作为键的好处呢?就是可以保护数据啊,保护它的键不被修改,然后更加的安全,那我们可以把它原组也是可以进行一个字典里面的 互相的嵌套,圆组里可以嵌到字典,那字典呢,里面也可以放进这个圆组作为键去保护它的安全, 那我们圆组主要就是通过下标去进行一个访问,然后可以通过切片去对每个元素我们需要的某一部分的数据去进行一个 访问过去。啊,那同样呢,我们也可以获得它的长度以及原组的一些嵌套形式啊,它是可以嵌套所有的数据类型的。

清华大佬终于把 python 做成了动画片,存下吧,全五百集,学完即可上岗!警告,本视频耗时六个月制作,制作时长八百分钟,陪你系统的学习 python 入门到实战,这应该是目前抖音最良心全面的入门到进阶的 python 全套教程,哪怕你是零基础也能听懂 python 要怎么样学习才正确有效?首先是基础部分,需要学习 python 软件安装、电量 运算符、循环字符、串元组。第二阶段是进阶篇,会详细讲解各种 python 进阶知识函数、面向对象、 正则表达式等知识,用最易懂的方式带你熟练使用 python, 为后面的路打下牢固的基础。三阶段技能训练会从 python 爬虫、数据分析、人工智能、办公自动化等领域展开,让你可以把所学的知识进行变现,流进你的口袋。为了让大家轻松学习 python, 我 们这套课程呢,会从语法入门篇、 语法进阶篇、全站实战篇等三大方面来讲解。语法入门篇里面包含了 python 拍唱的安装以及环境配置学习变量计算符、数据类型控制结构函数等。语法编程语法进阶篇里面呢,我会详细讲解每一个进阶知识,从面向对象编程、异常 处理、正则表达式等知识。全站实战篇会手把手教大家练习项目,比如爬取图片、视频办公自动化、数据分析、 机器学习等。最后呢,会给大家一个小福利,有搭建开发环境资料包、 python 从零到一的学习计划表,几十上百记素材、书籍、课件等等,只要你能想到的素材我这里几乎都有,评论留言 六六六即可全部免费打包带走,相信我,这套 python 系统课程将会是全网最齐全最易懂的小白专用课,如果看到这对你有所帮助的话,请给老师一个免费的一键三连吧,让更多想要学习 python 的 看到这个视频吧。 大家好,下面我们来介绍六点二点五删除元素啊,删除元素啊,使用列表的 remove 方法,其中里面呢有一个参数啊,这个参数呢就是要删除的这个元素, 你看哈,我们这个里面有一个这个列表啊,然后这里有八十啊,我 remove 八十就会把它删掉, 你看我们这个里边的这个例子呢,里面有八十哈,然后呢,我把这个例子的用它的尾幕方法,我把八十呢算一下,你看这个例子没有了,是吧, 我们再追加一下哈, 有两个八十啊,你看看我们这个 remove 哈 啊,他会将第一个八十给 remove 掉,对吧? 大家好,下面我来介绍六点三原主,原主呢,这个英文单词呢,叫 tap, 那么他呢,是一种不可变的虚列,他跟那列表很相似,但列表是可变的,而原主呢,是不可变的。这个原主呢,跟列表很像的,但是他与列表最大区别就是列表是可变的,而原主是不可变的。 我们先来介绍一下六点三点一创建原主, 创建原主呢,我们说也主要有两种方法哈,第一种呢,是通过 top 的 这个函数来实现的,里面这个参数也是可迭代的这样的一个对象。 那么第二种方式创建呢,就是将所有的呃元素都给它陈列出来,元素和元素之间用逗号分割,然后用小块扩起来, 这一点呢跟列表很相似,列表呢是用中号扩起来,而原主是用小括号给扩起来,那我们来看看哈这两种方式。 首先呢,我们通过这个 tab 这个函数来创建原主, tab 这个函数里面这个参数是一个可叠代对象,然后这里这个可叠代对象呢,我们使用的是一个列表,你看啊,使用一个列表作为参数,当然可以。 然后呢,第二种方式呢,我们是通过一个小括号,把列表所有的元素做为参数,当然可以。然后呢,第二种方式呢,我们是通过一个小括号,把元素和之间用逗号分割, 这就创建了这个啊,原主对象。我们看看书中的一个案例哈, 我们需要注意的是,我们在创建原主这个对象的时候呢,我们可以啊,把这个所有的原主的元素都给它陈列出来,然后用小号扩进来, 事成这个小括号可以省略,你这样也是创建一个原主,这也是在创建一个原主,你加小括号也是创建一个原主,你看这都是啊,你看加上括号创建原主,不加小括号也是创建原主。 然后呢,这个是通过它的 tab 的 函数来创建的,这都是通过 tab 函数来创建的。 另外还有一种非常特殊的情况,就是我们呢在某一个元素后面加一个逗号, 加一个逗号之后啊,我们说实际上这是创建了一个只有一个元素的原主,你看这个一逗号,这个创建一个元素的一个原主, 你不加逗号,其实这就是只有一个元素的原主。 另外啊,你要想创建一个空的原主,你怎么创建?我们之前在讲这个列表时候,创建空的列表是用一个一对中号,那么创建空的原主的话是是一对小号啊,这是创建空的原主, 你看你有一个变量啊,我们给它这样的几个数字啊,给它,呃,陈列开来,你看你看它的这个类型是什么, 对吧? tap, 这说明这是圆柱,你给它加上小括号,它也是圆柱。 还有呢就是说我们假如说使用一对空的哎空的小框,那它也是原主。 还有呢就是说我们比如说一逗号,你看一逗号,它也是原主。 下面来介绍六点二点三,原主拆包。呃,原主这个操作呢,实际上就相当于啊 给这个数据打包的过程。比如说我们想把一些数据放到一起,就可以放到原主里面,比如说你看我把幺零二,还有这个张三,这两个数据 啊放到一起,放到一起,放到怎么办呢?就可以放到一个箱子里,这个箱子呢就可以是个原主。当然有同学说我也可以是列表, 那么这个过程呢,就相当于啊,呃,给这个数据进行打包,打包成为原主的过程。 那么相反的操作就是从这个圆柱里面,我们也可以呢把这个数据呢给他分离出来,把单个的数据分离出来,这个过程呢就是拆包过程, 你比如说呢,这是一个原主,这个原主里里面有两个元素,对吧?第一个元素是幺零二,第二个元素呢是张三,然后呢我们就可以呢把其中的每一个元素啊单独取出来,赋给一个变量。 你看呢,我们现在有一个原主,你看幺零二,张三啊,这是一个原主,然后呢,把它放到这个等号的右边 啊,给他取值,而不是放到等号的左边哈,放到等号的右边,准确来讲,这应该叫赋值符号,放在赋值符号的右边,这个过程就拆包出来两个元素, 两个元素,你看,把这个赋给这个变量,把这个呢赋给这个变量,这样这两个变量你就单独可以使用了,这个过程就是拆包的过程。 下面来介绍六点四,集合,集合呢,这个单词呢是 set, 这里需要注意的是,有同学说我学过 java 哈,我学过其他什么什么语言,那么在这个 java 中啊,呃,也有一个集合,但是那个集合呢,似乎跟我们拍分所讲的集合不太一样。 呃,确实不一样,就拍分中的这个集合呢,其实呢,更像数学中的集合概念。 那么这个集合呢,里面的元素啊,他是不可以重复的。我们在学列表和原主的时候啊,列表原主都属于这个,我们叫做序列吗?序列的特点是元素是有序号的, 但是里面的元素啊,并没有规定是否可以有重复的。就是列表啊,原主其实是可以有重复元素的,但是集合是不能够有重复元素的,集合是无序的,要注意,集合是无序的, 不能包含重复元素的这样的容器类型数据。所以呢,集合呢,跟序列不一样,序列可有重复的?序列是有序的,序列里面的元素是有序的,而集合里面的元素是无序的,集合里面的元素是不能重复的。 所以呢,在使用集合的时候,就不能够向序列中通过下标左引去访问里面的元素了,不能这样, 我们来看创建集合,创建集合使用是 set 这个函数来创建, set 也是集合的类型,集合的数据类型, 我们还可以通过使用大括号将集合里的元素都陈列出来,这种方式也是可以的。 好,你看我们通过这个 set 的 函数里边提供一个可接待对象,你看就创建了这里面的元素。这里需要注意的是哈,你看这个 hello 呢, 这个字母串呢,它实际上是由五个字母组成,但其中这个 l 这个字母呢,是重复的,因此呢,它构建集合之后,重复的就被剃掉了,不能有重复的,所以这个集合呢,只有四个元素,你看就这样。 另外我们也可以通过这个大括号把这个集合里的元素的陈列出来,用逗号呢分割他们。然后你看这里面也有重复的,你看这是二十,这二十、十五十五,这都重复了。所以创建好这个集合之后啊,你看只有一个二十,只有一个十五, 然后你看二十五、三十十,是吧?实际上只有四个元素 是不能重复的,而且他们放进来的这些元素啊,他没有顺序,他跟这个列表原主不一样,原主呢,是有序号的,放下来第一个元素呢,下边缩影是零,第二个元素缩影是一, 而在集合中没有,没有这个这个序号的问题,他无趣的嘛,所以这一点呢,我们一定要注意哈,你看我们这个例子哈,这创建一个集合, 你看啊,这个集合里面,你看就是有这几个元素了啊,这个元素它没有顺序啊,没有说这个 h 打头就放到第一个位置,没有。 另外我们要想创建一个空的这样一个列表,你看我们怎么去创建,可能有的同学会想当然,我们用大罐扩起来的话啊,这不就是一个空的一个集合了吗?啊,其实不是,你看它的类型, 你看它实际上是一种 d i c, t, 就是 字典类型,这是我们需要注意的啊,我们不能使用这种空的大括号来创建一个空的集合。 下面我来介绍六点四点二修改集合啊, set 这种类型的集合呢,是可以修改的啊,修改集合呢,无非就是添加元素,清除集合里所有元素了哈。那么添加集合元素的话,使用 add 的 这个方法 啊,里面要追加的元素啊,这里需要注意的是啊,因为这个集合里面的元素是不能重复的,如果这个添加的元素在这个集合里已经存在的话,那就不能追加,但不会抛出错误。 另外删除集合里的元素,使用滚木方法啊。如果呢,这个集合里的元素呢?不存在,他就会抛出错误啊,就会产生错误,引发错误。 另外我们可以使用 clear 这个方法清除集合里的所有的元素。你看这是我们书中的案例哈,书中这个案例呢,你看这个,呃,这个变量呢,是一个集合, 然后我们增加一个元素上来,哎,对,增加上来水幕,你看就删掉了。然后我们在这做了一个测试哈, 要注意,在这个,呃,成员测试的时候,我们使用这个 in not in, 它也适合与这个集合。在列表里面用到了哈,在序列中可以使用 in not in, 那 么在集合中也可以使用 啊,这是 remov 这个李四,你看这个李四其实已经不存在了,你在 remov 时候就会出现异常,你看啊,在这个里边 加上来了,对吧? 然后呢,我们再去 remove 李四,李四已经不存在了,是吧?你再 remove 的 话就会有错误发生, 我给它清除一下哈, 下面我来介绍六点五字典,字典呢,它也是一个可迭代对象字典的这个类型啊,是 d i c t, 那么他是由这个键和这个值所构成的,他是通过这个键来访问对应的值,在这个键这个仕图里面,我们看啊,键这个仕图里面 他是不能有重复元素的啊,见实境是一种啊集合类型,然后微柳就是直的部分,直呢,这个里面其实可以有重复元素,他是通过这个见直对,一个个对应,见直对啊,这样一个对应, 所以呢,在有些计算机员中,字典呢被称为 map, 就是 映射这种书籍类型,其实字典呢就是一种映射类型,就是由见啊,由直见和直, 所以呢它是成对成对出现的。 我来看创建字典,创建字典呢,也主要有两种方法,一种呢就是通过 d i c t 这个函数来创建,另外一种呢就是通过呃大括号扩起来, 用这种键值对,键值,对哈,前面一个键冒号直,然后这是一个键值对,逗号再分割,这又是一个键值对,这又是一个键值对, 就是通过这种方式来创建字典,这两种方式都是可以哈, 我们来看书中的这个例子啊,这个呢,创建字典的时候呢,如果我们使用 d i c t 这个函数来创建的话呢,那么里面的参数呢,有多种多种形式, 那么我们来介绍几种哈,首先呢我们可以通过把建制队陈列在这个里面,用大号给扩起来这种方式来创建, 这种方式创建呢,虽然有点看起来呢,还不如直接呢把这个建制队陈列出来,创建字典要简单。 那么除此之外呢,还可以有,你看哈里边还可以放原主,就是在字典里面呢,可以放原主,你注意看哈这个括号到这个括号,这是一个原主,原主里面又是三个原主,就是原主里面套原主。 然后呢这个里边呢这个原主呢他的有两个,有两个数据啊,第一个数据呢就是他的值,第二个数据是他的键,你看我们这里有一个图解。 呃,你看在这个里边呢,首先呢我们呢有三个原主。这样去看啊,我们有三个原主,三个原主,三个原主准备好了,里面有两个元素,第一个是给键啊,第二个是给这个值,给键值,键值。 然后呢再把这个三个原主呢放到一个大的原主里面去,你看这个大的原主呢有呃三个原数, 然后把它放到 d、 i、 c, d 这个函数里,创建一个字典,创建这个字典好之后啊,你看哈它就是这样一个建值。对,你看 那幺零二对应的是张三,幺零五对应的是李四,幺零九对应的是王五,就是这样这种方式可以创建。 还有呢我们还有很多种方式了,除了可以用原主,我们还可以用这种方式,你看啊,这个里面呢是 一个列表,比如说把三个原主放一个列表里面可以创建,也可以把三个原主放到一个大的原主里,也可以创建,对吧?他俩呢三和四五呢,非常相似。 还有一种方式啊,使用一种叫 zip 的 函数, zip 这个函数啊,呃,顾名思义就是打包, zip 就是 打包, 就是把一些数据呢给他进行打包,打包成什么呢?打包成为一个原主,就是说他呢,你看有两个列表,这一个列表,这一个列表,然后他把这个列表呢打包成为原主,结果是什么呢?我们来看图解啊, 这个图解在这啊,就是说呢,我们有这个键啊,和值啊,有两个这种列表, 把这两个列表作为 zip 的 参数传进来。 zip 这个函数呢,它的特点呢是可以给它这些数据打包成为原主。打包成为原主是什么样一种类型呢?就这种类型,你看就是把它的第一个元素,把这个第一个元素和这个第一个元素拿出来 放到一个原主里面去,把它第二个元素和第二个元素拿出来放到一个原主里面去,然后把这个第三个第三个元素拿出来放到一个原主里, 然后这样一来的话,它实际上就是创建了一个有三个原主的这样的一个大的原主对象,所以这个这个函数呢,就是起到这样的一个作用。 所以 zip 最后呢打包的结果呢?其实但是跟这个是类似的,跟第五行呢是非常类似的, 就是说呢它的结果呢? zip 啊,结果呢?其实呢就是它 六点五点二修改字典啊,字典呢可以被修改,就是我们可以呢对字典的呃里边的元素进行添加删除修改,你这需要注意的是哈, 这个添加和删除其实都是对整个箭支对的添加和删除他不能说啊,只是对一个箭添加了啊,没有值,那是不可以的,就是添加个删除,你要么添加一个箭支对,要么删除一个箭支对,不能只删除其中的箭,或者只删除其中的值。 替换呢,就是通过这个箭替换对应的代码哈,你看我们创建一个字典, 这个字典呢,我们是通过把这个键值对呢放到大括号里,然后用逗号分割来创建的,没有使用 d i c t 函数来创建的哈, 然后呢,我要想访问其中的元素的话,就可以通过对应的键来访问对应的值,你看在这个里面,这个幺幺零啊,在这个里面没有啊,没有的话呢,它就会添加 添加一个键值,对,就幺零零董六,你看他就添加上来。另外如果这个键存在,你看幺零九这个键存在哈,对应的是王五啊,如果呢,你给他赋值这个张三,这个过程呢,就给他替换了使用,就把幺零九呢替换成为张三了, 你看就调成张三。那有同学可能会问,这幺零二也有张三,所以你看呢,在这个字典里面对于值的要求啊,是可以有重复的,你看可以有重复的元素值里面,但是键里面是不能有的 啊,删除对应的键值对,如何删除呢?可以使用 pop 这个方法, pop 啊,指定这个键。 姐,你看这个幺零五,所以他就会把幺零五这个键值对删除他的返回值啊,是这个对应的值,同时呢会删除这个键值对,你看,你再往下看哈,这个幺零五比四就不存在了, 下面来介绍六点五点三访问字典式图,根据我们的业务需要,我们可以通过三种方式去访问字典里的式图,一种呢,就是我想把这个建制对都返回,就可以使用 items。 一 种呢,我只想返回键部分的这个式图,可以使用 case, 注意这是 case, 有 s, 如果我们只想返回值是图,可以使用 values。 我 们来看书中案例,你看这个第一行,我们创建一个字典 items, 就 会把它的所有的键值顿呢都返回, 把它的 items 就 把它的所有的一个键值顿呢都返回。但是啊,这种类型啊,它并不是一个列表,然后我们再把这个参数传给这个列表,你要返回的时候呢,这才是一个真正的列表, 这才是一个真正的列表。然后这个列表里面呢,呃,就是有三个元素了哈, 三个元素呢,每个元素是一个原主,这个原主的里面呢包含键值,键值,键值是这样, items 的 话啊,我们经常用于对这个字典啊进行便利。 还有这个 case, 你 看 case 得到一种这种类型, d, i, c, t case 这样的一种类型数据,但是它还不是列表,然后呢,再放到列表这函数给它转成列表, 这样的话就把这个字典所有的键都取出来放到一个字典里了。同样道理,我们取它的值就是 values, 但是这个值呢,它也不是一个列表,它是一种 d, i, c, d, v 六十这样的一种对象,然后再放到例子里边给它转换成为啊,这种列表,就是所有的值都取出来放到一个列表里。

大家好,欢迎来到 python 系列课程,今天我们将学习一个非常重要的数据结构,原组 top。 原组最大的特点就是它的有序性和不可变性,这使得它在数据保护、函数返回、多值等场景中有着独特的应用。 让我们一起揭开原组的神秘面纱。在学习原组之前,我们先来看几个生活中的例子,比如地图上的坐标点、 rgb 颜色值、个人信息记录。这些数据都有一个共同点,它们都是由多个元素组成的整体元素之间有明确的顺序,并且我们希望这个整体的内容是稳定的,不被轻易修改的。 这正是源组要解决的问题。那么在 python 中,源组到底是什么呢?它是一个有序且不可变的序列数据结构。记住这两个关键词,有序和不可变。有序意味着你可以通过缩隐访问元素。不可变意味着一旦创建就不能再修改它的内容。 创建源组主要有两种方法,第一种是直接使用小括号,这是最推荐的方式。第二种是使用 tpl 函数,它可以将一个列表、字母串等可迭代对象转换成源组。这里有一个非常常见的初学者陷阱, 如果你想创建一个只包含一个元素的原组,必须在元素后面加上一个逗号,否则 python 会把它当做一个普通的括号表达式,而不是原组。 记住,单元素原组逗号不能少。访问原组中的元素非常简单,和列表一样,我们可以使用缩影和切片,缩影从零开始,也可以使用负缩影。切片可以让我们获取原组的一个子序列,这些操作都和列表完全一样。原组和列表非常相似,但核心区别在于可变性。 列表是可变的,可以随时修改,而原组是不可变的,一旦创建就不能改变。因此,当你需要存储不希望被修改的数据时,应该使用原组。 原组的一个非常重要的用途是让函数返回多个值。 python 的 函数只能返回一个值,但我们可以返回一个原组,然后在调用时一次性接收多个返回值, 这在实际编程中非常方便。源组的不可变性还赋予了它两个独特的用途,第一,它可以作为字典的键,而列表不行。第二,它可以用来保护重要数据,确保数据在程序运行过程中不被意外修改。源组的不可变性还赋予了它两个独特的用途,第一,它可以作为字典的键,而列表不行。 第二,它可以用来保护重要数据,确保数据在程序运行过程中不被意外修改。好了,我们来总结一下今天学习的核心知识点,记住,源组是有序且不可变的,掌握它的创建访问方法, 理解它和列表的核心区别在于不可变性,并了解它的函数返回多值作为字典键和数据保护方面的用途。今天我们学习了源组的基础知识,如果你还想深入学习学习更多内容,我整理了 python 入门到精通的完整教程及一百个实战项目和原版,留下学习我发,感谢大家的聆听,我们下次课再见!