顺序结构
一般的Python代码都是使用的顺序结构,顺序结构即从上往下依次执行代码。
开始执行
结束执行
代码示例:
print("Hello, World!")
def sayHi():
print('Hi')
sayHi()
分支结构
在Python中,判断(if、elif、else)与异常捕获(try、except、else、finally)都是用的分支结构,分支结构会根据具体情况选择不同的执行代码。
开始执行
情况1
结束执行1
情况2
结束执行2
情况3
结束执行3
单分支结构
if就是单分支结构。
是
开始执行
是否符合if情况
执行if语句
if 条件:
执行代码
代码示例:
if True:
print('Hello World')
双分支结构
if-else就是双分支结构。
是
否
开始执行
是否符合if情况
执行if语句
执行else语句
if 条件:
执行代码
else:
执行代码
代码示例:
if 1+1==2:
print('一加一等于二')
else:
print('一加一不等于二')
同时,双分支结构还有一种紧凑格式:表达式1 if 条件 else 表达式2
。条件成立则表达式1,条件不成立就表达式2。
代码示例:
print('一加一等于二') if 1+1==2 else print('一加一不等于二')
print('一加一等于二' if 1+1==2 else '一加一不等于二')
值得注意的是,赋值等语句不算是表达式,也就是说name = 'value1' if True else name='value2'
语句是错误的写法(SyntaxError: cannot assign to conditional expression,语法错误:无法分配给条件表达式)。对于赋值,您可以使用name = 'value1' if True else 'value2'
的方法使解释器把整个右值当作一个表达式。
多分支结构
if-elif、if-elif-else就是多分支结构。
是
否
是
否
开始执行
是否符合if情况
执行if语句
是否符合elif情况
执行elif语句
执行else语句
if 条件1:
执行代码
elif 条件2:
执行代码
else:
执行代码
代码示例:
if 1+1==1:
print('一加一等于一')
elif 1+1==2:
print('一加一等于二')
else:
print('一加一既不等于一也不等于二')
循环结构
在Python中,for循环(遍历循环)及while循环(条件循环)就是循环结构,循环结构会将某一段程序重复执行。
是
否
开始执行
循环代码
是否结束循环
结束执行
for循环(遍历循环)
for 局部变量名 in 可迭代对象:
执行代码
代码示例:
nums = [0,1,2,3,4,5]
for num in nums:
print(num)
while循环(条件循环)
while 条件:
执行代码
代码示例:
while True:
print('无限循环!')
while 1+1==3:
print('看来一加一不等于三,所以无法输出...')
退出循环
-
continue
:退出当次循环,进入到下次循环 -
break
:退出当前循环,执行下一段命令 -
for-else
与while-else
:如果在循环体中未使用break,则会执行else语句(如下)
for i in range(5):
...
else:
print('没有用break')
for i in range(5):
break
else:
print('用了break')
(最终只打印“没有用break”)