《Python全栈运维开发系列》
文章平均质量分 81
《Python全栈运维开发系列》包含Python最全的学习指南,涵盖Python基础入门、Python进阶语法、Python并发编程、Django Web开发、各种各样的小项目实战、以及基于Python+Django开发的运维管理平台。
勿拍此专栏,可以根据需要订阅部分专栏!!!
优惠券已抵扣
余额抵扣
还需支付
¥259.90
¥399.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
Jiangxl~
CSDN博客专家、51CTO专家博主、阿里云博客专家、华为云享专家、DevOps运维领域优质创作者、
2021年度博客之星运维与安全领域TOP1,InfoQ签约作者、阿里云社区签约作者。博客包括:Python、前端、Kubernetes、Docker、CI/CD、DevOps、Prometheus、Zabbix、MQ、Redis、MySQL、WEB集群、自动化运维、阿里云、ELK、Linux、等相关使用及进阶知识。查看博客过程中,如有任何问题,皆可随时沟通。
展开
-
第62讲:Python编程案例之谁在说谎
将True和False放在一个列表里,通过三重循环来遍历这个列表,外层循环遍历的结果赋值给iszhang变量,表示张三说的是真话或者假话,内层循环1的结果赋值给isli变量,表示李四说的是真话或者假话,内层循环2的结果赋值给iswang变量,表示王五说的是真话或假话。not True的值为False,not False的值为True,True+True的值为True,True+False的值为False。在三重循环里,去判断每次循环张三、李四、王五的时是否满足以下这个条件,如果满足,则可找到谁在说谎。原创 2023-07-07 09:12:34 · 22157 阅读 · 15 评论 -
第62讲:Python编程案例之杨辉三角
2)生成这个二维列表可以使用列表生成式来实现,上图中的杨辉三角是9行,我们就循环遍历9次,生成式中也要进行循环,循环i+1次,i是外层循环每次遍历的值,带着i+1的值作为内层循环的遍历条件,每次内层循环时就在子列表中生成一个元素1。索引为1的元素新值为:索引为i-1(2-1=1)的子列表也就是上一个子列表(上一行)中索引为j-1(1-1=0)的元素 + 索引为i-1(2-1=1)的子列表也就是上一个子列表(上一行)中索引为j(1)的元素,即。2)第二次内层循环,j的值为1,符合j!=0 and j!原创 2023-07-05 09:20:14 · 22149 阅读 · 24 评论 -
第61讲:Python编程案例之谁家孩子跑的最慢
2)紧接着定义江家、张家孩子的分数列表jiang、zhang,后面通过各种循环判断后,得到各家孩子的分数,然后写入到各家对应的分数列表中,江家、张家孩子的分数列表中起始都有一个元素,因为已知江家的孩子是第一名,张家的孩子是第二名,因此江家的初始列表就是[9,],张家的初始列表就是[8,]。3)不用定义李家孩子的分数列表,因为我们设计的思路是:江家、张家孩子取到各自孩子的分数后,会从总分数列表中删除对应的分数,这样一来,江家、张家孩子都从总分数列表中删除了,剩下的三个元素,就是李家孩子的分数。原创 2023-07-03 09:20:15 · 21951 阅读 · 21 评论 -
第61讲:Python编程案例之百钱买百鸡
方案二是用双重循环实现的,我们可以再思考一下,外层循环能得到公鸡x的数量,第一个内层循环能得到母鸡y的数量,那么100减去x减去y,不就等于小鸡z的数量了吗,所以我们可以只遍历两次即可计算出一百元分别买了多少只什么鸡。用100元买100只鸡,其中公鸡5块钱1只,母鸡3块钱1只,小鸡1块钱3只值,需要计算出用100元各买了几只公鸡、母鸡和小鸡。只,因为小鸡是1元3只,因此100块钱可以买300只,也就是说小鸡z的取值范围可以是0~100,并且z一定要能整除3。只,所以母鸡y的取值范围可以是0~33。原创 2023-06-25 10:40:00 · 15791 阅读 · 22 评论 -
第61讲:Python编程案例之鸡兔同笼
然后使用if判断,如果2乘以x加4乘以y等于m时,鸡有2条腿,兔子有4条腿,当鸡的数量乘以腿数,加上兔子的数量乘以腿数,等于总腿数,这时就说明该问题得到解了,然后打印鸡和兔子分别有多少只。是否等于120,如果等于则返回鸡和兔子分别多少只,如果不等于,则继续循环,第二次x为2,y就是33,以此类推,直到2乘以x加4乘以y等于m时,得到解,结束循环。例如n总头数为35,m总腿数为120,第一次循环时,遍历给x的值为1,在循环体中得出y的值就是34,判断。设鸡的数量为x只,兔子的数量有y只。原创 2023-06-25 10:38:52 · 16240 阅读 · 0 评论 -
第61讲:Python编程案例之角谷猜想
这个猜想到目前为止不认为是正确的,但是也不能举例这个猜想是错误的。基于这两个运算策略,任何自然数经过反复运算,总可以得到结果1。我们的需求就是传入任意的自然数,验证角谷猜想。原创 2023-06-21 10:45:43 · 16279 阅读 · 0 评论 -
第60讲:Python编程案例之不重复的三位数
不重复的三位数指的是,要求百位、十位、个位的三个数字都不能重复,从而形成的一个三位数。例如由1、2、3、4、5这五个数字组成不重复的三位数,百位可以组成不重复数的个数为5个,十位组成不重复数的个数有4个,个位组成不重复数的个数有3个,这都是定律了。为什么百位可以有5个呢,如果给出的几个数字不包含0,那么有多少个数字,百位可以组的数字就会是多少个,如果给出的数字中包含0,则百位可以组的数字就不能包含0,因为0开头就成了2位数了,如果给出的数字其中包含0,那么百位和十位可以组的数字个数是相同的。原创 2023-06-20 09:32:30 · 15277 阅读 · 17 评论 -
第59讲:Python编程案例之舍罕王赏麦
另外我们也可以用列表生成式来实现这个案例,仔细观察,每个格子里的麦子数都是2的n次方,因此我们可以直接遍历所有的格子,第一次遍历格子里的麦子数就是2的1次方,第二次遍历格子里的麦子数就是2的2次方,最后一次遍历格子里的麦子数就是2的64次方,以此类推。宰相说,请您在在这个棋盘的第一个格子里放1粒麦子,第二个格子里放2粒麦子,第三个格子里放4粒麦子,每一个格子里的麦子数量都要比前一个格子多一倍,把这64个格子都放满就行了。然后通过sum函数将列表中的所有元素相加在一起,得到所有的麦子数量。原创 2023-06-19 09:52:27 · 15293 阅读 · 25 评论 -
第58讲:Python编程中最难以理解的递归函数核心概念以及应用案例
其中1是传入的实参,14是最后返回的结果,要为实参加的数字第一次循环判断,数字为1,小于5,那么就为其加1,得到结果为1+1=2,第二次循环的数字为2,小于5,那么就为其加1,得到结果为2+1=3,第三次循环的数字为3,小于5,那么就为其加1,得到结果3+1=4,第四次循环的数字为4,小于5,那么就为其加1,得到的结果4+1=5,第五次循环的数字为5,不小于5了,循环结束,将每次循环的结果都相加在一起2+3+4+5,最后再和传入的实参相加1+2+3+4+5,得到15。原创 2023-06-13 09:44:29 · 15386 阅读 · 28 评论 -
第57讲:Python定义函数时添加函数注解
定义函数时,为了更加清楚的表示形参和返回值的类型或作用,可以给形参和返回值添加函数注解,从而对形参和返回值做更加充分的解释说明,更久的通俗易懂。通过函数注解,可以清楚的表明这个形参要传递什么样的数据类型,返回值是一个什么样的结果。虽然使用函数注释声明了形参的类型,但是毕竟是一个注释,一种说明,所以Python解释器在执行代码时,会忽略掉函数的注解,因此解释器并不会使用函数注解来检查我们传递的实参的类型,以及返回值的类型。函数注解是可选的,可以添加也可以不添加,函数注解的表示可以是任意的表达式,也可以是一个简原创 2023-06-12 09:07:23 · 15684 阅读 · 19 评论 -
第56讲:Python为函数定义文档字符串
查看某个函数的文档字符串,通过__doc__这个属性来查询。__doc__这个属性查询到的文档字符串可以在函数定义中看到,位于第一行。下面我们来定义一个函数,声明文档字符串。:return:获取slist_min_max函数的文档字符串。通过内置函数help()获取函数的帮助信息,在其中也包含文档字符串信息。原创 2023-06-02 09:36:19 · 15492 阅读 · 16 评论 -
第55讲:Python函数形参、实参的语法格式汇总以及应用小案例
如果仅传入一个位置实参,后续全用关键字实参的话,para2形参将会使用默认值,因为第一个位置实参传递给了para1形参,后面全是关键字实参了,第一个关键字实参传递给para3,其余的关键字实参传递给kwargs形参。如果调用函数时,只传入一个实参,那么这个实参就会传给para1实参,para2形参则会用指定的默认值作为实参,agrs则会返回一个空元组,kwargs则会返回一个空字典。在调用函数时,如果传入的参数是序列,并且希望将序列中的每个元素都转换为独立的位置实参,那么就在序列前添加一个*号。原创 2023-06-01 09:13:23 · 27289 阅读 · 20 评论 -
第54讲:Python调用函数时使用**将字典中的每个元素转换为关键字实参
函数中如果存在多个形参,我们在调用函数时也可以传入一个字典,字典中的每个键值对元素都作为一个关键字实参,Key作为形参名,Value作为形参的实参,然后传递给函数中的每个形参,那么如何将字典中的每个键值对元素作为一个实参呢?调用fun1函数时,传入的是一个字典,我们本想着让字典中的每个键值对元素作为一个关键字实参,Key作为形参名,Value作为形参的实参,传递给函数中的形参,但是抛出了异常,如下所示,将字典认为是一个位置实参,只传给了user形参。用于将字典中的键值对元素转换为关键字形参。原创 2023-05-31 09:15:35 · 27229 阅读 · 18 评论 -
第53讲:Python定义函数时使用**定义个数可变的关键字形参
定义函数时,最多只能定义一个个数可变的关键字形参,如果定义多个的话,即使传递再多的实参也都会传递给第一个个数可变的形参,所以不允许一个函数里定义多个个数可变的关键字形参。定义个数可变的形参非常简单,只需要在形参的前面添加**号。原创 2023-05-30 09:40:19 · 26997 阅读 · 23 评论 -
第52讲:Python调用函数时使用*将序列中的每个元素都转换为位置实参
函数中如果存在多个形参,我们在调用函数时可以传入一个序列,序列中的每个元素都作为一个位置实参,传递给函数中的每个形参,那么如何将序列中的每个元素作为一个实参呢?调用fun1函数时,传入的是一个列表序列,我们本想着让列表中的每个元素作为一个位置实参,传递给函数中的形参,但是抛出了异常,如下所示,将序列认为是一个位置实参,只传给了para1形参。但是有更专业的做法,使用*号将序列中的每个元素转换为单独的位置实参,从而传递给函数中的形参,要注意,这个星号是在调用函数时使用的。原创 2023-05-29 10:59:43 · 26763 阅读 · 24 评论 -
第51讲:Python定义函数时使用*定义个数可变的位置形参
定义函数时,最多只能定义一个个数可变的位置形参,如果定义多个的话,即使传递再多的实参也都会传递给第一个个数可变的形参,所以不允许一个函数里定义多个个数可变的关键字形参。定义个数可变的形参非常简单,只需要在形参的前面添加一个号,与强制使用关键字传参的不同,这个号和是形参连在一起的。#定义函数时,使用*定义一个个数可变的形参 def fun1(* args) : print(args) fun1(1) fun1(1 , 2) fun1('jiangxl' , 1 , 2)原创 2023-05-25 09:19:27 · 27370 阅读 · 25 评论 -
第50讲:Python定义函数时使用*强制某个形参使用关键字传参
在定义函数时,我们可以强制某个形参必须使用关键字传参,如果不用关键字传参则会抛出异常。号后面所有的形参都会被设置成强制关键字传参,只能接受关键字传参过来的实参。强制某个形参使用关键字传参,做法也很简单,只需要在形参的前面添加一个。原创 2023-05-25 09:14:40 · 26857 阅读 · 12 评论 -
第49讲:Python函数调用解析:传参方式、实参与形参关系、多返回值示例
如果需要函数执行完毕后有多个返回值,那么可以在函数体内使用return语句返回多个返回值,使用return语句输出的多个返回值会组成一个元组进行输出。下面我们通过两个案例去演示使用return返回多个返回值。原创 2023-05-23 14:37:01 · 27671 阅读 · 28 评论 -
第48讲:Python中函数的概念以及应用案例
函数是具有某种特定功能的代码块,可以重复的调用这个函数进行使用。函数可以接收输入参数,然后执行特定的代码以完成特定的功能,最后输出返回值,其中输入和输出的返回值都是可以选择是否要定义。如果一段代码在程序中会被频繁调用,我们就可以将这一段代码做成函数,并指定一个接收的参数,相当于通过这个函数传入特定的参数,就可以完成特定的功能,当程序需要用这一项功能时,直接调用即可,每次调用函数,会根据传入的参数执行特定的代码以完成特定的功能,从而输出返回值。原创 2023-05-22 09:21:12 · 27508 阅读 · 29 评论 -
第47讲:Python字典对象生成式的概念以及应用案例
字典生成式用于快速创建出一个字典,根据指定的字典元素生成表达式,通过for-in循环遍历从而快速创建出字典。例如我们想要生成字典,除了直接创建外,还可以通过for-in循环。#定义Key和Value的来源列表,user列表的元素全是字典中的Key,age列表的元素全是字典中Key对应的Value users = [ 'jiangxl' , 'wangwu' , 'zhangsan' ] ages = [ 28 , 36 , 42 ] #定义一个空字典 userex = {原创 2023-05-18 09:48:48 · 27066 阅读 · 25 评论 -
第45讲:Python生成式的概念以及列表生成式的应用案例
Python中针对列表、元组、集合、字典等可迭代对象提供了一种快速创建序列的简介语法。这个简介的语法就是生成式,也叫作推导式。生成式一般由:生成序列中元素的表达式+for循环+if条件组成。生成式主要是利用循环遍历一个可迭代对象,然后根据指定的生成元素表达式,每循环一次在序列中添加一个元素,从而快速的创建序列。列表生成式用于快速创建出一个列表,根据指定的列表元素生成表达式,通过for-in循环遍历从而快速创建出列表,需要注意的时,通过列表生成式生成的列表,其中的元素可能是有规律的,因为表达式是相同的。原创 2023-05-15 09:34:08 · 13680 阅读 · 23 评论 -
第44讲: Python使用map和filter函数遍历可迭代对象
我们可以指定方法str.isalpha,利用map和filter函数对可迭代对象中的元素进行处理,当元素都是字母时,才会返回True,否则就是False,filter函数会过滤掉返回值为Flase的元素。调用内置函数filter后,会使用指定的函数对指定的可迭代对象中的每个元素,进行遍历处理,然后过滤掉函数处理结果为False的元素,生成一个新的可迭代对象。结果如下,map函数根据我们指定的ord函数,对指定的可迭代对象字符串中所有的字符元素都进行了处理,然后使用list函数将其转换成列表。原创 2023-05-12 09:33:42 · 13860 阅读 · 24 评论 -
第43讲:Python并行循环遍历序列的实现方法
zip函数可以将多个序列进行压缩重组生成一个zip对象,zip函数会将相同索引的元素压缩到一个元组中,每个元组充当一个列表中的元素,我们可以去遍历这个zip对象,利用元组的多变量复制的形式,实现并行遍历输出数据的场景。姓名、年龄、专业这三个数据的索引号都是相同的,也就是说列表中索引相同的元素会组成一条数据,既然索引相同的元素可以组成一条数据,那我们就可以根据索引号去遍历。实现这样的需求时,需要保证每个列表的数据是一一对应的,也就是说姓名、年龄、专业这三个数据的索引一定要保证是相同的,否则就会造成数据错乱。原创 2023-05-11 10:23:30 · 13629 阅读 · 12 评论 -
第42讲:Python循环语句中的break和continue语法结构
continue的特性就是只跳过本次循环,然后进入下一次循环,并不会结束整个循环流程,此时的效果就会和break有明显的区别,效果如下,每次外层循环都会包含3次内层循环,即使3次内存循环中有一次满足条件被执行了continue,也只是跳过了本次循环,随即进入下一次循环,不会想break似的直接结束了内层循环。嵌套循环指的是一个循环中套着另一个循环,第一个循环为外层循环,第二个循环为内层循环1,第三个循环为内层循环2,以此类推。也就是说一次外层循环遍历,要进行n次内层循环遍历,n取决于内层循环遍历的次数。原创 2023-05-09 09:42:45 · 14131 阅读 · 16 评论 -
第41讲:Python循环语句中的break-else语法结构
循环之前先定义一个布尔值变量,变量存储布尔值False,在循环体中定义一个条件判断,当满足这个条件时就将布尔值变量的值设置为True,然后执行break跳出循环,循环结束后用if去判断布尔值变量的值是不是False,如果是False就说明我们的循环是正常退出后,非break退出的,此时就执行某些操作。当循环体中的条件判断成立时,就修改isFalse变量的值为True,并跳出循环,这时将不满足while循环后面的if判断,认为这不是正常的循环结束,此时循环后的操作将不会被执行。原创 2023-05-09 09:39:00 · 13876 阅读 · 12 评论 -
第40讲:Python for-in循环语句使用索引遍历序列
enumerate函数可以将一个有序序列(如列表、元组、字符串)组合成一个带索引元素、元素本身的元组,enumerate函数返回值是一个迭代器对象,可以通过list函数转换成列表格式。使用enumerate函数,可以手动指定索引的起始值enumerate(序列 , 起始索引值)将一个列表通过enumerate函数转换成带有索引、元素的对象。1)enumerate函数返回值是一个迭代器对象。原创 2023-05-05 08:59:41 · 15173 阅读 · 24 评论 -
第39讲:Python for-in循环语句核心概念以及案例演示
for-in循环语句专门用于循环遍历序列、字典和集合等类型的对象,当然字符串也可以,只要是存在多个元素的对象,都可以通过for-in语句来循环遍历。遍历指的是把对象中的所有元素依次访问一遍,遍历依次只能读到一个元素,加上循环遍历后可以循环性的读取对象中的所有元素,每当访问对象中的一个元素,就被称为依次迭代,因此可以使用for-in语句遍历的对象又被称为可迭代的对象。当迭代次数已知时,推荐使用for-in语句。当迭代次数未知时,推荐使用while语句。原创 2023-05-04 09:16:58 · 13897 阅读 · 11 评论 -
第38讲:Python while循环语句核心概念以及案例演示
首先输入登陆系统的用户名和密码,开始循环,此时检测密码是否正确,如果检测结果为True表示密码正确,退出循环,显示操作菜单,如果检测结果为False表示输入的面错误,再次循环登陆,只有3次机会,如果三次内密码输入正确了则登陆到系统显示操作菜单,如果三次密码输入的都不对,也退出循环,但是会禁止登录。无限循环,当输入的数字比后台指定的数字小时,则提示你加上多少,可能就猜对了,当输入的数字比后台数字大时,则提示你减去多少,可能就对了,当猜对时,返回你玩了多少次,需要支付多少元。原创 2023-04-25 11:11:03 · 10269 阅读 · 29 评论 -
第37讲:Python if-elif-else流程控制语句核心概念以及案例演示
如下图一个简单的流程控制:首先选择要操作的服务器,然后输入服务器的账号密码,紧接着就会有一个流程控制,判断输入的账号密码是否正确,如果条件判断的结果为True,那么就登陆到服务器的控制台,否则结果为False,那么就提示拒绝登陆,还有第二个流程控制,判断是否要关闭控制台,如果条件判断的布尔值为False则进行其他的操作,如果为True就断开连接。选择结构就是流程控制、条件判断相关的概念,一个程序肯定会有偶流程控制,例如根据业务的状态、用户的操作,选择性的执行部分代码,从而达到某种效果。原创 2023-04-24 09:18:57 · 10188 阅读 · 21 评论 -
第36讲:Python集合元素的查、增、删操作
对于集合的查操作,只能查询元素是否在集合中,集合是无序存放的,没有索引一说,因此无法通过索引去查询指定的元素,也无法像字典一样,能通过Key去查询Value。使用update方法添加的元素如果在集合中已经存在,则不会再添加。使用discard方法删除元素时,即使元素不存在,也不会报错。pop方法会任意删除集合中的一个元素,并且返回被删除的元素。另外,如果增加的元素已经在集合中了,集合不会有任何变化。当使用remove方法删除的元素不存在时,会抛出异常。集合中的元素是不可以修改的,但是可以增加和删除。原创 2023-04-20 09:42:00 · 10909 阅读 · 42 评论 -
第35讲:Python集合对象间的关系以及使用代码操作集合对象的数学操作
集合是可变类型的数据结构,通过set函数或者{}花括号创建的集合,都是可变类型的,但是元素是不可被修改的,可以对元素进动态的伸缩。在开发程序时,还是建议使用不可变的数据类型,因为多并发场景下,不可变类型的数据是不会被改变的,因此访问时无需加锁,能够提高程序的性能。集合也有方法变成不可变的类型,那就是使用frozenset函数创建集合,使用fronzenset函数创建的集合都是不可变类型的。当集合A中的所有元素都在集合B中,且集合A中可能还包含集合B没有的元素,此时集合A就是集合B的超集。原创 2023-04-12 13:35:15 · 9941 阅读 · 27 评论 -
第34讲:Python中集合对象的概念以及基本使用
前面不是说创建集合时,集合中的参数不能是列表吗,为什么又用列表了,注意这里并不是将列表作为集合中的元素,而是要把集合中的元素放在列表内,然后通过set函数将其创建成集合。除了列表、元组和字典外,集合也是Python语言提供的内置数据结构,可以抽象的将集合理解为是没有存储Value的字典,在集合中只有Key。当定义集合时,集合中有重复的元素,重复的元素也会被去掉,因为集合中不允许有重复的值。字符串是字符的集合,会将传入的字符串按照字符为元素,创建出集合。集合中的元素不能是列表,集合中的元素也不能是集合。原创 2023-04-11 10:14:25 · 10809 阅读 · 23 评论 -
第33讲:Python格式化字符串时使用字典传递字符串
此时就能根据指定的Key获取到字典中对应的Value,从而对Value进行格式化输出。需要注意的是,Key在字典中自带了引号,因此在占位符后小括号里写Key时,无需再加引号。方法,返回指定Key的Value,然后将其传递到占位符中,从而对Value进行格式化输出。的方式获取Key对应的Value值,然后将字典中所有Key的Value传递到格式化规则中,当字典中的键值对很多时,将非常繁琐,且代码量较大。需要注意的是,Key在字典中自带了引号,因此在占位符花括号里写Key时,无需再加引号。原创 2023-04-03 09:09:30 · 10642 阅读 · 18 评论 -
第32讲:Python获取字典对象的视图(items方法)
【代码】第32讲:Python获取字典对象的视图(items方法)原创 2023-03-31 10:31:58 · 10271 阅读 · 16 评论 -
第31讲:Python为字典中指定的Key设置默认的Value值
为了能够确保每次读字典中的元素,指定的Key总是存在的,可以调用setdefault方法为指定的Key设置一个默认的Value,使得每次读指定的Key时,这个Key永远都存在。使用setdefault方法时,当字典中不存在指定的Key时,该方法会返回我们指定的默认值,然后在字典中添加这个Key-Value键值对。使用setdefault方法时,当字典中存在指定的Key时,该方法会返回指定Key对应的Value值,字典不会有任何变化。原创 2023-03-28 09:33:53 · 10660 阅读 · 16 评论 -
第30讲:Python字典对象元素的改、增、删操作
update方法传递的参数,无法就是字典中现有的Key以及Key对应的新Value值,也可以传递一个列表,列表中的每个元素都是元组类型,在元组中声明Key对应的新Value。使用update方法修改Key的Value,传递的参数可以是一个字典,在字典中声明要修改那些Key,以及Key对应的新Value。update方法传递的参数,也可以传递一个列表,列表中的每个元素都是元组类型,在元组中声明新的Key以及对应的新Value。字典中的Key无法修改,只能修改Key对应的Value。原创 2023-03-27 10:04:20 · 14164 阅读 · 28 评论 -
第29讲:Python强大的内置函数zip()的核心概念以及丰富的应用案例
当a、b两个字符元素与其他序列中相同索引的元素重组完之后,即使其他序列中还有没被压缩的元素,此时也不会再进行压缩了,压缩过程结束,最终返回的新元组就是:(‘a’, ‘e’, ‘h’)和(‘b’, ‘f’, ‘i’),第二个序列中的g和第三个序列中的j,这两个字符的索引都为2,但是第一个序列中没有索引为2的元素了,此时就不会对这两个元素进行处理,较长的序列已经被截断了。zip()函数传入的参数必须是一个可迭代的对象,所谓的可迭代对象就是能够遍历的对象,也就说zip函数传入的参数必须是列表、字符串、元组等等。原创 2023-03-25 09:26:33 · 10670 阅读 · 21 评论 -
第28讲:Python中字典对象的核心概念以及使用案例
在Python中,除了列表和元组外,字典也是Python提供的内置数据结构,字典是可变的数据结构,且其中的元素都是无序存放的,在字典中可以存放任意类型的对象。字典的实现原理和现实中查字典的原理很类似,在现实中查字典时可以通过两种方法:1)从字典的第一页一直到最后一页,一页一页的查找,直到查找到对应的字位置,这种方法和列表中查找元素的方式一样,缺点就是当元素越来越多时,查找的效率会很低。原创 2023-03-24 09:22:16 · 12890 阅读 · 32 评论 -
第27讲:Python前导字符串和后续字符串的去除
前导字符串指的是:根据指定的“一个或多个字符”字符串列表,从字符串左边第一个字符处开始依次往后查找,直到字符串中的某个字符不在指定的字符串列表中时,这个字符处往前的所有字符就是前导字符串。lstrip。如下图所示,有一个字符串“www.jiangxl.com”,想要去除这个字符串中的前导字符串,指定一个字符串列表为cmowx.然后将这个字符串列表传递给lstrip方法。此时会从字符串左边的第一个字符w处开始查找,查找字符串中有哪些字符是指定的字符串列表里的,3个w字符和.都在指定的字符串列表。原创 2023-03-24 09:06:03 · 13119 阅读 · 17 评论 -
第26讲: Python中以is开头的字符串方法使用案例
主要用来判断字符串是否是Python中的关键字,需要导入keyword模块中的iskeyword方法。需要注意的是六、VI这种大写数字、英文数字在Python也被认为是数字。主要是判断字符串是否是标准的字符串,没有特殊字符串值之类想。原创 2023-03-23 09:05:49 · 12911 阅读 · 22 评论