所有的程序,无论它的源码多么的庞大——即使是Windows操作系统,其程序也由三种基本结构组成:顺序结构、分支结构、循环结构。
Python中的流程控制语句包括:if、for、while、break、continue五个。Python3.10增加了match。当然也有人会将pass(类似于汇编指令nop,什么也不做的空指令)归类于流程控制。
01顺序结构
顺序结构是最常见、最简单,也是最容易理解的一种最基本的程序结构。
顾名思义,顺序结构就是程序从上到下依次执行的程序结构。(注:不一定从左到右,因为可能受到运算符优先级的影响)
顺序结构的图示可以用下图表示,其中箭头的方向表示程序运行的方向。
顺序结构
程序中除了分支结构和循环结构以外的程序部分都属于顺序结构。
02分支结构
分支结构(也称选择结构)也是很容易理解的。就像树的主干向分枝延伸一样。
程序在同一时刻只选择执行其中一个分支。
分支结构的图示可以用下图表示:
分支结构
曾经在相当长的时期内,Python中的分支流程控制语句只有if一个。没有switch和select,它们都可以用if替代。Python中的缩进方式使得if兼具switch或select的效果。
但是在Python3.10中,已经添加了match语句,它具有其他编程语言中的switch或select的功能。
03循环结构
有时候我们需要重复地执行某些相似的任务,可以用循环结构来表示。
循环结构的图示可以用下图表示:
循环结构
根据循环次数是否有限,循环可以分为循环次数有限的有限循环和循环次数无限的无限循环。无限循环又称死循环,死循环是初学者最容易犯的错误,它导致程序难以调试。不过死循环有时并非语法错误,有时候是正好需要死循环的。
Python中的循环流程控制语句有for、while两个。Python中没有do...while、wend语句。
04结语
本文虽然讲述的是Python程序流程结构,也适用于所有的编程语言。
编程中涉及的知识,也就像程序结构一样。
除了顺序结构也有分支和循环,这些因素导致为文章进行编号的困难,有些知识并不需要前面的所有文章作为前提,就像分支一样,有些文章之间相互关联互为前提,又像循环一样。
因为这样的原因,文章编写和阅读理解都不是一件容易的事情。
如果你在阅读过程中碰到有些知识点难以理解,可以把它记下来,在当时不要过于纠结。在以后的阅读中,带着这些疑问阅读,你可能会豁然开朗。
不仅编程如此,人生亦如是。
05往期温习
Python教程:第10篇了解变量Python教程:第11篇变量赋值下篇快捷入口:Python教程:第13篇if语句