一、顺序结构
-
定义
- 方向:从上至下。
- 规则:逐条执行。
-
代码实现
-
代码:
print(1) print(2) print(3)
-
运行结果:
-
二、选择结构
-
单分支选择结构
-
语句:if
-
格式:if 条件 : 条件成立分支
-
例:当变量 a 大于 3 时输出 “Hello”,当 a 小于 2 时输出 “World”
-
代码:
a = 10 if a > 3 : print("Hello") if a < 2 : print("World")
-
运行结果:
-
-
说明:a = 10,第二行代码判断 a > 3 条件成立,所以输出了 Hello;第三行代码判断 a < 2 条件不成立,所以 World 未输出。
-
-
双分支选择结构
-
语句:if …… else……
-
格式:if 条件 : 条件成立分支 else : 条件不成立分支
-
例:当变量 a 大于 3 时输出 “Hello”,否则输出 “World”
-
代码:
a = 10 print("当 a = 10 时") if a > 3 : print("Hellow\n") else: print("World\n") a = 2 print("当 a = 2 时") if a > 3 : print("Hellow\n") else: print("World\n")
-
运行结果:
-
-
说明:当 a = 10 时,第三行代码判断 a > 3 条件成立,所以执行条件成立的结构体;当 a = 2 时,第 10 行代码判断 a > 3 条件不成立,所以输出 else 分支(条件不成立的分支)
-
注意事项:注意缩进。
-
-
多分支选择结构
-
语句:if elif else
-
格式:if 条件1 : 条件1成立分支 elif 条件2 : 条件2成立分支 else : 所有条件都不成立的分支
-
例:成绩在 90 分以上为优秀,成绩在 80 分以上为良好,成绩在 60 分以上未及格,成绩在 60 分一下为不及格。
-
代码:
achie = 92 print("当成绩为 92 分时,成绩等级为:",end="") if achie > 90: print("优秀") elif achie > 80: print("良好") elif achie > 60: print("及格") else: print("不及格") achie = 81 print("当成绩为 81 分时,成绩等级为:",end="") if achie > 90: print("优秀") elif achie > 80: print("良好") elif achie > 60: print("及格") else: print("不及格") achie = 71 print("当成绩为 71 分时,成绩等级为:",end="") if achie > 90: print("优秀") elif achie > 80: print("良好") elif achie > 60: print("及格") else: print("不及格") achie = 59 print("当成绩为 59 分时,成绩等级为:",end="") if achie > 90: print("优秀") elif achie > 80: print("良好") elif achie > 60: print("及格") else: print("不及格")
-
运行结果:
-
-
三、循环结构
-
while 循环
-
语法:while 条件 : 循环体
-
例:一行内输出五个 * ,要求每次输出一个。
-
代码:
i = 0 while i < 5: print("*",end="") i += 1
-
运行结果:
-
-
例:利用 while 嵌套输出 5 行 5 列的 * 号矩阵,要求每次输出一个。
-
代码:
i = j = 0 while i < 5: while j < 5: print("*",end="") j += 1 i += 1 j = 0 print()
-
运行结果:
-
说明:循环嵌套相对于单层循环而言比较难理解。但是,不要慌。单层循环一般用于输出一条线,双层循环一般用于输出一个面。切记:在双层循环体中,外层循环控制行数,内层循环控制每行的每个位置的内容。在本例中,变量 i 用于控制行数,变量 j 用于控制每一行中每个位置的内容。在代码中,第 7 行将内层循环变量 j 恢复默认值 0,原因是,每次进入内层循环前,都要对内层循环变量重定义,否自内层循环无法执行。
-
-
例:利用 while 嵌套输出直角三角形,要求每次输出一个。
-
代码:
a = b = 0 while a < 5: a += 1 while b < a: print("*",end="") b += 1 b = 0 print()
-
运行结果:
-
-
例:利用 while 嵌套输出直角三角形,要求每次输出一个。
-
代码:
i = 5 j = 0 while i > 0: while j < i: print("*",end="") j += 1 i -= 1 j = 0 print()
-
运行结果:
-
-
利用 while 嵌套输出等腰三角形,要求每次输出一个。
-
代码:
i = j = 1 while i < 4: while j < 6: if i == 1: if (i + j) > 2 and (i + j) < 6 and (i + j) % 2 == 0: print("*", end="") else: print(" ",end="") else: if (i + j) % 2 == 0: print("*", end="") else: print(" ",end="") j += 1 i += 1 j = 1 print()
-
运行结果:
-
-
利用 while 嵌套输出字母 O。
-
代码:
i = j = 0 while i < 5: while j < 5: if i == 0 or i == 4 or j == 0 or j == 4: print("*",end="") else: print(" ",end="") j += 1 i += 1 j = 0 print()
-
运行结果:
-
-
利用 while 嵌套输出字母 N。
-
代码:
i = j = 0 while i < 5: while j < 5: if j == 0 or j == 4: print("*",end="") elif j == i: print("*", end="") else: print(" ",end="") j += 1 i += 1 j = 0 print()
-
运行结果:
-
-
-
range函数
- 作用:用来创建一个整数的序列可迭代对象
- 语法:
- range(开始点,结束点,间隔)
- 开始点:数值范围的开始,包含这个数
- 结束点:数值范围的结束点,不包含这个数
- 间隔:跨度,弓差
-
for 循环
-
语法:for 循环变量 in 对象集
-
例:利用 for 循环输出 0 ~ 10 内的偶数
-
代码:
numList = range(0,11,2) for i in numList: print(i)
-
运行结果:
-
-