任何简单或者复杂的算法都可以由顺序结构、分支(选择)结构和循环结构这三种基本结构组合而成。所以这三种结构被称为程序设计的三种基本结构,也是程序化程序设计必须采用的结构。
那当然python也有这三种基本机构了, 下面举例说明
程序中的源代码按照自上而下的顺序, 依次执行各个操作
# 顺序结构
print("start")
print("running")
print("end")
# 输出结果
"""
start
running
end
[Finished in 0.1s]
"""
分支结构有单项分支、双项分支、多项分支、嵌套分支
相当于其他语言的switch和case, 可以有多个elif, 但只会执行其中一个项
# 基本结构
if 条件成立:
执行代码块1
elif 条件2成立:
执行代码块2
elif 条件3成立:
执行代码块3
......
else:
执行代码块4
# 单向分支
"""
if 条件成立:
执行代码块
"""
# 举例
if 5 < 12:
print("条件成立")
# 输出结果
# 条件成立
# 双向分支
"""
if 条件成立:
执行代码块1
else:
执行代码块2
"""
# 举例
if 5 > 12:
print("条件成立")
else:
print("条件不成立")
# 输出结果
# 条件不成立
# 多项分支
"""
if 条件成立:
执行代码块1
elif:
执行代码块2
else:
执行代码块3
"""
# 举例
if 5 > 12:
print("5 > 12")
elif 5 < 12:
print("5 < 12")
else:
print("5 == 12")
# 输出结果
# 5 < 12
所有分支都可以嵌套分支结构, 可以根据自己的需要嵌套
但应该避免嵌套, 因为不便于阅读, 也容易忽略判断
# 嵌套结构
"""
if 条件成立:
if 条件成立:
执行代码块1
else:
执行代码块2
else:
执行代码块3
"""
if 5 < 12:
if 5 == 5:
print("5 == 5")
else:
print("5 != 5")
else:
print("5 < 12")
# 输出结果
# 5 == 5
循环结构可以减少源程序重复书写的工作量(代码量),用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构。
Python中的循环结构有是 while循环 和 for .. in循环
死循环就是循环不会终止的循环类型,设置条件永远为True来实现,但非常占用资源
格式1
# 基本结构
"""
while 条件成立:
执行代码块
"""
age = 17
while age < 18:
print("age == 18")
age += 1
# 输出结果
# age == 18
格式2
while循环中的else是在while条件表达式为假的情况下执行的代码内容
# 基本结构
"""
while 条件成立:
执行代码块
else: # 条件不成立
执行代码块
"""
age = 17
while age < 18:
print("age == 18")
age += 1
else:
print("age < 18")
# 输出结果
# age == 18
# age < 18
for 变量 in 容器(可迭代对象)
用于遍历容器类的数据(字符串,列表,元组,字典,集合)
格式1:
for address in ["bj", "hb"]:
print("address", address)
# 输出结果
# address bj
# address hb
格式2:
# 使用1注意用以下格式
"""
[(),(),()] 列表中有元组
[[],[],[]] 列表中有列表
((),(),()) 元组中有元组
{(),(),()} 集合中有元组
"""
# 1
for key, value in [("a", "aa"), ("b", "bb")]:
print(key, "====>", value)
# 输出结果
# a ====> aa
# b ====> bb
# 2
for key, value in {"c": "cc", "d": "dd"}.items():
print(key, "---->", value)
# 输出结果
# c ----> cc
# d ----> dd
格式3:
# 循环结束时执行else区间的代码
for i in "ab":
print("i ====>", i)
else:
print("for end")
# 输出结果
# i ====> a
# i ====> b
# for end
在循环中break的作用是终止当前循环结构的后续所有操作,
一点程序运行了break,循环也就终止了。
终止本次循环
# break
for i in "abc":
if i == "b":
print("break", i)
break
print("i result==>", i)
# 输出结果
# i result==> a
# break b
在循环中continue的作用是跳过本次循环,开始下一次循环。continue 执行之后本次循环的后续代码不再执行,直接进入下一次循环。
# continue
for i in "abc":
if i == "b":
print("continue", i)
continue
print("i result==>", i)
# 输出结果
# i result==> a
# continue b
# i result==> c
占位语句,保证代码的完整性,
避免语法错误。
# pass
if 5 < 12:
pass
else:
print("not output result")
# 没有输出结果