当前位置: 首页 > 科技观察

Python编程中特有的循环语句及其特点

时间:2023-03-13 06:36:21 科技观察

Python编程追求简洁优雅,无所不能,贴近人类的自然表达方式。毋庸置疑,其简单而不简单的魔力吸引了大批粉丝。即使它的语法和内置函数等,可以简写或简写,也永远写不完。如果你习惯了这种写法,再看看“Spring-style”的长命名,你简直会奇怪,当初为什么要在键盘上敲那么多遍——难道是为了锻炼身体?说的有点远,回到正题。我们知道,标准代码执行过程中的控制语句只有几种类型:顺序执行、条件执行、循环执行,以及这几种类型的组合或/和嵌套。各种编程语言(如C/C++、Java、JavaScript、PHP、go等)在具体语法上有不同的实现,但基本相同:if-else结构、while结构、for结构等。这里要说的是Python循环结构语法的正则展开模式。以while为例,它的正规语法结构如下:whilecondition:#loopbodypass这是一个典型的使用形式。其扩展结构如下:whileconditon:#loopbodypasselse:#whileloopbodyexecutespass。while-else结构和if-else结构的区别是在if结构下只能执行其中一个(满足条件的),而while结构通常两部分都执行。例子如下:counter=0whilecounter<5:counter+=1print(f"counter={counter}")else:print(f"while结束,进入else部分:currentcounter={counter}")运行上面的代码,输出结果如下:counter=1counter=2counter=3counter=4counter=5结束了,进入else部分:目前counter=5的代码没有故事,简单易懂。但是让我以另一种形式来看效果:counter=0whileTrue:counter+=1print(f"counter={counter}")ifcounter>=5:breakelse:print(f"whileends,elsepart...,counter={counter}")运行程序,输出类似如下:counter=1counter=2counter=3counter=4counter=5结束,else部分没有执行……当然,for-elsePython结构相同,这里不再举例,感兴趣的可以自行尝试。这里要说的是,在Python的“loop-else”结构中,如果使用break提出循环,则会跳出整个循环结构,循环的else部分也是整个循环的一部分.所以,循环体结束后如果想做一些收尾工作,一定要注意不要使用break跳出。我在给学生介绍这个结构的时候,说语法看起来不是很鸡肋。你的Python不是追求简单吗,给while/for加个else,没有它会死吗?你想在else中做的事,不用else也能完成。后来顺着Python的“人性化”指导思想,又想了想:就像在饭店吃饭,正常吃完(正常的事)付账,在饭店门口抢糖倒一杯水外出时(清扫工作);但是如果边吃边吃异物,不能继续吃的开心就走(异常termination-break),怎么还有心情喝水吃糖呢?——大概就是这个意思吧^_&。Python编程还是很有趣的,但更多的是用Python解决实际问题。所以Python语法简单易学,但是还是有很多库和框架可以学习灵活使用Python解决问题。今天先写这些,其他的Python特有的编程特殊实现下次再写。

猜你喜欢