【Python实践笔记】0008H 程序的控制结构

本文介绍了Python编程中的程序分支结构,包括单分支、二分支、多分支和条件判断,详细讲解了条件组合及异常处理机制。在循环结构部分,阐述了遍历循环、无限循环的实现方式,以及循环控制保留字的使用,并提供了循环的高级用法示例。此外,文中还涉及了如何利用异常处理进行输入操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
图片来源于turtle库的练习



1. 程序的分支结构


1.1 单分支


在这里插入图片描述


1.2 二分支


在这里插入图片描述


在这里插入图片描述


1.3 多分支


在这里插入图片描述


1.4 条件判断


在这里插入图片描述


1.5 条件组合


在这里插入图片描述


1.6 条件判断及组合


在这里插入图片描述


2. 程序的异常处理


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


如果在语块1执行的过程中出现了异常,程序立即从1中跳出,去执行2,然后继续往下执行。如果1执行正常结束,则程序继续往下执行,不会执行2

常见的异常有:

  • 不合适的转换,例如 int(“abc”) int(“23.34”) float(“abc”)
  • 输入已经结束(已经没有输入数据了)后,还执行input()
  • 除法除数为0
  • 整数和字符串相加
  • 列表下标越界(比如3个元素的列表用到了下标4)

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


3. 程序的循环结构


3.1 遍历循环


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述
range(1, 6, 2)中,1,6是遍历的范围(1~5,不包含6),2是步长

扩展:

  • range(0)是空的,是遍历不出值的;
  • range(2, 2)这样的也是空的;

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述
fi是文件名称。


3.2 无限循环


在这里插入图片描述


实例:

输入三个整数,求它们的最小公倍数
解法:枚举,一个个试

s = input().split() #这样写,输入的三个数就会放到列表中
x,y,z = int(s[0], int(s[1]), int(s[2]))
n = 1
while True:
	if n % x == 0 and n % y == 0 and n % z == 0:
		print(n)
		break
	n = n + 1

s = input().split() #这样写,输入的三个数就会放到列表中
x,y,z = int(s[0], int(s[1]), int(s[2]))
n = 1
while not(n % x == 0 and n % y == 0 and n % z == 0):
	n += 1
print(n)

优化:

s = input().split() #这样写,输入的三个数就会放到列表中
x,y,z = int(s[0], int(s[1]), int(s[2]))
n = m = max(x, y, z) #挑出三个数中最大的一个数,从最大的开始试
while True:
	if n % x == 0 and n % y == 0 and n % z == 0:
		print(n)
		break
	n += m

扩展:

用while语句和异常处理进行输入

输入若干行,每行若干整数,求所有整数的最大值

s = input()
lst = s.split()
maxV = int(lst[0])
try:
	while True:
		lst = s.split()
		for x in lst:
			maxV = max(maxV, int(x))
		s = input() #如果输入数据没了还执行input,会产生异常
except:
	pass  #pass语句啥都不干
print(maxV)

注意:Windows中Ctrl+Z,Pycharm中Ctrl+D,告诉程序没有输入了


3.3 循环控制保留字


在这里插入图片描述
扩展:

  • break跳出for的循环时,for的else语句也不会执行;
  • break跳出while的循环时,while的else语句也不会执行;

在这里插入图片描述


在这里插入图片描述


3.4 循环的高级用法


在这里插入图片描述


在这里插入图片描述


4. 参考资料

【1】慕课网,北京理工大学,嵩天教授,《Python语言程序设计》声明:笔记中截图、部分代码来自该课程课件,非博主原创
【2】Python123:在线编程网站
【3】菜鸟教程
【4】慕课网,北大,郭玮老师,《实用Python程序设计》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智驾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值