2023(春)Python程序设计作业1: 基础语法之控制流程

程序有三种基本的控制结构:顺序结构、选择结构、循环结构。
1.1 顺序结构
顺序结构是最简单也是最常见的一种结构,采用顺序结构的程序通常按照由前到后的顺序执行各个语句,直到程序结束,结构如下所示:
顺序结构:

1.2 顺序结构实例
举例如下:
a = 2
b = 3
c = a + b
d = c * 24
print(a, b, c, d)
输出结果即为:2,3,5,120。
条件语句是通过判断条件是否成立,根据条件表达式的结果做出决策,控制不同代码块的执行。
2.1 条件表达式
条件表达式由运算符和操作数组成
例如:a<4,其中a、4都是操作数,小于符号<是运算符
判断条件可以是具有布尔属性的任意元素,包括数据、变量或由变量与运算符组成的表达式,若其布尔属性为True,条件成立;若布尔属性为False,条件不成立。
除了非空常量外,Python还常使用关系操作符和成员运算符构成判断条件 。
条件表达式常用的运算符有:
算术运算符:+、-、*、/、//、%、**
关系运算符:

Python支持通过保留字not、and和or对判断条件进行逻辑组合:
- not,表示单个条件的“否”关系。如果“条件”的布尔属性为True,“not 条件”的布尔属性就为False;如果“条件”的布尔属性为False,“not 条件”的布尔属性就为True。
- and,表示多个条件之间的“与”关系。当且仅当使用and连接的所有条件的布尔属性都为True时,逻辑表达式的布尔属性为True,否则为False。
- or,表示多个条件之间的“或”关系。当且仅当使用or连接的所有条件的布尔属性都是False时,逻辑表达式的布尔属性为False,否则为True。
2.2单分支选择结构

- 若if语句中的判断条件成立,执行if语句后的代码段;
- 若判断条件不成立,则跳过if语句后的代码段。
- 单分支结构中的代码段只有“执行”与“跳过”两种情况。
示例:使用单分支结构判断当天是否是星期天。
day = int(input("今天是工作日吗(请输入整数1~7)?"))
if day in [1,2,3,4,5]:
print("今天是工作日。")
if day in [6,7]:
print("今天非工作日。")
2.3 双分支选择结构

- 若if语句中的判断条件成立,执行代码段1
- 若判断条件不成立,则执行代码段2
示例:使用二分支结构判断当天是否是工作日。
day = int(input("今天是工作日吗(请输入整数1~7)?"))
if day in [1,2,3,4,5]:
print("今天是工作日。")
else:
print("今天非工作日。")
2.4 多分支选择结构


2.5 选择结构的嵌套
选择结构的嵌套是指选择结构的内部包含选择结构


2.6 三元表达式
python中没有c语言中的三目运算符,但是可以通过以下的形式实现三目运算符的功能
格式:条件判断为真时的结果 if 判断条件 else 条件为假时的结果
示例:x=x-1 if x>0 else x=x+1
等价于:
if x > 0:
x = x - 1
else:
x = x + 1
我们可以利用三元表达式来实现裴波那契数列:
def fun(n):
return n if n < 2 else fun(n - 1) + fun(n - 2)
还有一种用法,用bool方法选择相应的值,例如:
x = 1
print([2, 3][bool(x)])
x = 0
print([2, 3][bool(x)])
结果:
3
2
3 循环语句
在实际应用中有些需要重复进行的操作,可以用循环语句实现。
循环语句有:
while、do while、for
3.1 while循环

- 若循环条件为True,则循环执行while循环中的代码段;
- 若循环条件为False,终止while循环。
- 若while循环的条件总是True,这种情况叫做死循环 。
例如:使用while循环实现计算n的阶乘
n = int(input("请输入一个整数:"))
fact = 1
i = 1
while i<= n:
fact = fact*i
i = i + 1
print("n!={}".format(fact))
3.2 while else循环
Python的while循环也支持使用保留字else产生分支。
示例2:使用while-else循环实现计算n的阶乘
n = int(input("请输入一个整数:"))
fact = 1
i = 1
print("n!计算中……")
while i<= n:
fact = fact*i
i = i + 1
else:
print("n!计算完成 ,循环正常结束")
print("n!={}".format(fact))
3.3 for 循环

- 目标可以是字符串、文件、range()函数或组合数据类型等;
- 循环变量用于保存本次循环中访问到的遍历结构中的元素;
- for循环的循环次数取决于遍历的目标元素个数。
示例1:遍历字符串中的每个字符
string = input("请输入一个字符串:")
for c in string:
print(c)
3.4 for else循环
for…else循环的具体实现形式:
for 循环变量 in 目标:
循环体
else:
代码块
用法与while…else相同,如果循环体结束后没有碰到break语句,就会执行else语句块,如果结束之前碰到了break语句,就会跳出整个for循环,因此else语句块也就不会执行。
4 循环控制语句
·在循环语句中,有时候需要达到中断循环,或者跳过本次循环,执行下次循环的情况,因此就需要有循环控制语句
python中使用break、continue语句控制循环的执行过程
break用于跳出整个循环
continue用于跳出本次循环,继续执行下次循环
4.1 break语句


4.2 continue语句


4.3 pass语句
pass的意思是过,pass掉就是淘汰掉的意思。
在python中,pass的意思是空语句,pass语句不做任何事情,只是为了保持程序结构的完整性。
相关推荐
2022-2023秋季学期Python程序设计大作业.zip
Python程序设计是现代计算机科学教育中的重要组成部分,尤其在2022-2023秋季学期的大作业中,它被选为强化学习和复习巩固的工具。
北航2023暑期Python程序设计大作业
北航2023暑期Python程序设计大作业是一项面向北京航空航天大学学生的编程实践活动,旨在通过实际的项目任务加深学生对Python编程语言的理解和应用能力。
记录并保存2023年春学习python时的作业和小练习.zip
Python是一种广泛使用的高级编程语言,以其易读性、简洁的语法和强大的功能而闻名。2023年春季的学习过程中,通过Python作业和小练习,我们可以深入理解和掌握Python的基础及进阶知识。
2023 python作业:填词游戏.zip
Python的基础知识包括以下几个方面:1. **语法结构**:Python的语法简洁明了,易于阅读。它使用缩进来表示代码块,如if语句、for循环和函数定义。
程序设计基础2022-2023秋季班级.zip
《程序设计基础2022-2023秋季班级》是针对计算机科学与技术领域初学者的一个教学资源集合,旨在帮助学生掌握编程基础,为后续深入学习和实践打下坚实的基础。


