基本结构
任何简单或者复杂的算法都可以由顺序结构、分支(选择)结构和循环结构这三种基本结构组合而成。所以这三种结构被称为程序设计的三种基本结构,也是程序化程序设计必须采用的结构。
那当然python也有这三种基本机构了, 下面举例说明
顺序结构
程序中的源代码按照自上而下的顺序, 依次执行各个操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| # 顺序结构
print("start")
print("running")
print("end")
# 输出结果 """ start running end [Finished in 0.1s] """
|
分支(选择)结构
分支结构有单项分支、双项分支、多项分支、嵌套分支
相当于其他语言的switch和case, 可以有多个elif, 但只会执行其中一个项
1 2 3 4 5 6 7 8 9 10
| # 基本结构 if 条件成立: 执行代码块1 elif 条件2成立: 执行代码块2 elif 条件3成立: 执行代码块3 ...... else: 执行代码块4
|
单向分支结构
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| # 单向分支
""" if 条件成立: 执行代码块 """
# 举例
if 5 < 12: print("条件成立")
# 输出结果 # 条件成立
|
双项分支
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| # 双向分支
""" if 条件成立: 执行代码块1 else: 执行代码块2 """
# 举例
if 5 > 12: print("条件成立") else: print("条件不成立")
# 输出结果 # 条件不成立
|
多项分支
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| # 多项分支
""" if 条件成立: 执行代码块1 elif: 执行代码块2 else: 执行代码块3 """
# 举例
if 5 > 12: print("5 > 12") elif 5 < 12: print("5 < 12") else: print("5 == 12")
# 输出结果 # 5 < 12
|
嵌套分支
所有分支都可以嵌套分支结构, 可以根据自己的需要嵌套
但应该避免嵌套, 因为不便于阅读, 也容易忽略判断
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| # 嵌套结构
""" 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循环
while
死循环就是循环不会终止的循环类型,设置条件永远为True来实现,但非常占用资源
格式1
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| # 基本结构 """ while 条件成立: 执行代码块 """
age = 17 while age < 18: print("age == 18") age += 1
# 输出结果 # age == 18
|
格式2
while循环中的else是在while条件表达式为假的情况下执行的代码内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| # 基本结构 """ while 条件成立: 执行代码块 else: # 条件不成立 执行代码块 """
age = 17 while age < 18: print("age == 18") age += 1 else: print("age < 18")
# 输出结果 # age == 18 # age < 18
|
for … in
for 变量 in 容器(可迭代对象)
用于遍历容器类的数据(字符串,列表,元组,字典,集合)
格式1:
1 2 3 4 5
| for address in ["bj", "hb"]: print("address", address) # 输出结果 # address bj # address hb
|
格式2:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| # 使用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:
1 2 3 4 5 6 7 8 9 10 11
| # 循环结束时执行else区间的代码
for i in "ab": print("i ====>", i) else: print("for end")
# 输出结果 # i ====> a # i ====> b # for end
|
流程控制语句
break
在循环中break的作用是终止当前循环结构的后续所有操作,一点程序运行了break,循环也就终止了。
终止本次循环
1 2 3 4 5 6 7 8 9 10 11
| # break
for i in "abc": if i == "b": print("break", i) break print("i result==>", i)
# 输出结果 # i result==> a # break b
|
continue
1 2 3 4 5 6 7 8 9 10 11 12 13
|
在循环中continue的作用是跳过本次循环,开始下一次循环。continue
执行之后本次循环的后续代码不再执行,直接进入下一次循环。
跳过本次循环
|
1 2 3 4 5 6 7 8 9 10 11
| # 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
占位语句,保证代码的完整性,避免语法错误。
1 2 3 4 5 6 7 8
| # pass
if 5 < 12: pass else: print("not output result")
# 没有输出结果
|
点亮
,告诉大家你也在看 