本节课目标:
1. 能够说出 if 分⽀语句的作⽤
2. 能够说出 if 语句的语法格式
3. 能够说出 while 循环语句的作⽤
4. 能够说出 while 循环的语法格式
5. 能够说出 for循环的语法格式和作⽤
6. 能够说出 break 在循环语句中的作⽤
7. 能够说出 continue 在循环语句中的作⽤
8. 理解循环结合else的执⾏流程
一、判断语句
在说判断语句之前 ,我们在生活中总会面临各种各样的选择,而我们这时候就需要做出正确的选择来让结果朝着好的方向发展。在python程序中也是一样的,我们需要在程序运行的过程中进行判断,让程序运行到我们想要的结果,这时候就需要到判断语句进行判断了。
if 分⽀语句的作⽤
条件成立的时候执行某些代码,条件不成立则不执行某些代码。
if判断语句基本格式介绍
if语句是⽤来进⾏判断的,满⾜条件执⾏特定的代码,其使⽤格式如 下:
if 要判断的条件:
条件成⽴时,要做的事情
快速体验:
if False:
print('条件成⽴执⾏的代码1')
print('条件成⽴执⾏的代码2')
# 注意:在这个下⽅的没有加缩进的代码,不属于if语句块,即和条件成⽴与否都不执行
print('这个代码执⾏吗?')
if True:
print('条件成⽴执⾏的代码1')
print('条件成⽴执⾏的代码2')
# 注意:在这个下⽅的没有加缩进的代码,不属于if语句块,即和条件成⽴与否都不执行
print('这个代码执⾏吗?')
if语句使⽤逻辑运算
在程序开发中,执⾏结果 可能和 多个条件有关 ⽐如 多个条件都成 ⽴才能执⾏,或者有⼀个条件成⽴就可以执⾏,这时就需要使⽤ 逻 辑运算符 逻辑运算符 可以把 多个条件 按照 逻辑 进⾏ 连接,变成 更复杂的条件。
快速体验:
# 输⼊年龄
age = input('请输⼊年龄')
# 判断是否在0-120之间
if age>=0 and age<=120:
print('年龄正确')
if-else
if-else的使⽤格式
if 条件:
满⾜条件时要做的事情1
满⾜条件时要做的事情2
满⾜条件时要做的事情3
...(省略)...
else:
不满⾜条件时要做的事情1
不满⾜条件时要做的事情2
不满⾜条件时要做的事情3
...(省略)...
age = int(input('请输⼊您的年龄:'))
if age >= 18:
print(f'您输⼊的年龄是{age}, 已经成年,可以上⽹')
else:
print(f'您输⼊的年龄是{age},⼩朋友,回家写作业去')
if...elif...else...语句格式
多重判断elif
if xxx1:
事情1
elif xxx2:
事情2
elif xxx3:
事情3
说明:
当xxx1满⾜时,执⾏事情1,然后整个if结束
当xxx1不满⾜时,那么判断xxx2,如果xxx2满⾜,则执⾏事情2,然 后整个if结束
当xxx1不满⾜时,xxx2也不满⾜,如果xxx3满⾜,则执⾏事情3,然 后整个if结束
age = int(input('请输⼊您的年龄:'))
# 童⼯
if age < 18:
print(f'您输⼊的年龄是{age}, 童⼯')
# 18-60 合法
elif (age >= 18) and (age <= 60):
print(f'您输⼊的年龄是{age}, 合法')
# ⼤于60 退休
elif age > 60:
print(f'您输⼊的年龄是{age}, 退休年龄')
注意:else可以和多重判断elif一起使用
if 性别为男性:
输出男性的体重
...
elif 性别为⼥性:
输出⼥性的体重
...
else:
第三种性别的体重
...
当 “性别为男性” 满⾜时,执⾏ “输出男性的体重”的相关代码
当 “性别为男性” 不满⾜时,如果 “性别为⼥性”满⾜,则执⾏ “输 出⼥性的体重”的相关代码
当 “性别为男性” 不满⾜,“性别为⼥性”也不满⾜,那么久默认执 ⾏else后⾯的代码,即 “第三种性别的体重”相关代码
if嵌套
if 条件1:
满⾜条件1 做的事情1
满⾜条件1 做的事情2
if 条件2:
满⾜条件2 做的事情1
满⾜条件2 做的事情2
外层的if判断,也可以是if-else 内层的if判断,也可以是if-else 根据实际开发的情况,进⾏选择
快速体验:
# 是否有钱
money = 0
# 是否有空位
seat = 1
if money == 1:
print('⼟豪,请上⻋')
# 判断是否能坐下
if seat == 1:
print('有空座,坐下了')
else:
print('没有空座,站着等....')
else:
print('朋友,没带钱,跟着跑,跑快点')
if 实现三⽬运算操作
条件成⽴执⾏的表达式 if 条件 else 条件不成⽴执⾏的表达式
a if a > b else b
如果 a > b的条件成⽴,三⽬运算的结果是a,否则就是b
# 求a和b两个数字中的较⼤值.
a = 10
b = 20
# 使⽤三⽬运算符求较⼤值
max = a if a > b else b
print("较⼤值为:%d" % max)
二、循环语句
在生活中我们已有各种各样的的循环场景,比如跑步的时候,当我们没有跑到自己的目标的时候是不会停下来的,只有达到了一定的条件才会停下来。
循环的分类
在Python中,循环分为 while 和 for 两种,最终实现效果相同。
while和if的⽤法基本类似,区别在于:if 条件成⽴,则执⾏⼀次;
while 条件成⽴,则重复执⾏,直到条件不成⽴为⽌。
⼀般情况下,需要多次重复执⾏的代码,都可以⽤循环的⽅式来完成
循环不是必须要使⽤的,但是为了提⾼代码的重复使⽤率,所以有经 验的开发者都会采⽤循环
while循环
while循环的格式
while 条件:
条件满⾜时,做的事情1
条件满⾜时,做的事情2
条件满⾜时,做的事情3
...(省略)...
快速体验:
i = 1
while i <= 5:
print('媳妇⼉,我错了')
i += 1 # i = i + 1
计数器的书写习惯
上⾯循环中变量i称为循环变量,也可以称为计数器,有以下需要作⽤ 和需要注意的地⽅
1. ⼀般计数器起始值定为0
2. 计数器的作⽤是控制循环的遍数,但是⼀定要记得在程序中添加让计 数器发⽣变化的代码。
3. 让计数器发⽣变化的代码⼀定要放在while循环控制的代码块中,否 则不起作⽤。
循环的注意事项
如果在使⽤while循环的时候,计数器没有发⽣改变,那么计数器的值便 ⼀直是初始值,此时while后⾯的条件永远成⽴,那么循环会⼀直⽆限执 ⾏下去,⽆法终⽌,这种循环也称为死循环。
死循环指的是程序持续执⾏,⽆法终⽌,原因通常是忘记在循环内部修改循 环变量的值
break和continue
break:
在实际应⽤中,如果循环满⾜了⼀定的条件,没必要接着往下运⾏了,那 么这个时候就需要⽤到break退出循环。
循环吃5个苹果,吃完第3个吃饱了,第4 和 5 不吃了(不执⾏)
i = 1
while i <= 5:
# 条件:如果吃到4 或 > 3 打印吃饱了不吃了
if i == 4:
print('吃饱了,不吃了')
break
print(f'吃了第{i}个苹果')
i += 1
continue
在际应⽤中,如果循环满⾜了⼀定的条件,当前的代码没必要接着往下 运⾏了,需要跳出本次循环进⼊到下⼀个循环,那么就需要⽤到continue
吃5个苹果 -- 循环; 吃到第3个吃出⼀个⾍⼦,第三个不吃了,没吃饱,继续吃
i = 1
while i <= 5:
# 条件
if i == 3:
print('吃出⼀个⼤⾍⼦,这个苹果不吃了')
# 如果使⽤continue,在continue之前⼀定要修改计数器,否则进入死循环
i += 1
continue
print(f'吃了第{i}个苹果')
i += 1
while循环嵌套
在python中,循环和判断也是一样可以嵌套的
while 条件1:
条件1满⾜时,做的事情1
条件1满⾜时,做的事情2
条件1满⾜时,做的事情3
...(省略)...
while 条件2:
条件2满⾜时,做的事情1
条件2满⾜时,做的事情2
条件2满⾜时,做的事情3
...(省略)...
所谓while循环嵌套,就是⼀个while⾥⾯嵌套⼀个while的写 法,每个while和之前的基础语法是相同的。
打印九九乘法表
# 重复打印9⾏表达式
j = 1
while j <= 9:
# 打印⼀⾏⾥⾯的表达式 a * b = a*b
i = 1
while i <= j:
print(f'{i}*{j}={j*i}', end='\t')
i += 1
print()
j += 1
for循环
像while循环⼀样,for可以完成循环的功能。
在Python中 for循环可以遍历任何序列的项⽬,如⼀个列表或者⼀个字符 串等。
for循环的格式
for 临时变量 in 列表或者字符串等可迭代对象:
循环满⾜条件时执⾏的代码
快速体验:
str1 = 'itheima'
for i in str1:
print(i)
break
for循环中也可以使⽤break,和while循环中⼀样如果循环满⾜了⼀定的条 件,使⽤break可以退出循环。
str1 = 'itheima'
for i in str1:
# 当某些条件成⽴退出循环 -- break:条件 i取到字符e
if i == 'e':
break
print(i)
continue
for循环中也可以使⽤continue,和while循环中⼀样如果循环满⾜了⼀定的 条件,使⽤continue跳出本次循环执⾏下⼀次循环。
str1 = 'itheima'
for i in str1:
# 当某些条件成⽴退出循环 -- continue:条件 i取到字符e
if i == 'e':
continue
print(i)
循环结合else
while..else
while 条件:
条件成⽴重复执⾏的代码
else:
循环正常结束之后要执⾏的代码
循环可以和else配合使⽤,else下⽅缩进的代码指的是当循环正常结束之 后要执⾏的代码。
i = 1
while i <= 2:
print('考试考砸了')
i += 1
else:
print('考试通过了')
break
i = 1
while i <= 5:
if i == 3:
break
print('媳妇⼉,我错了')
i += 1
else:
print('媳妇原谅我了,真开⼼呐,哈哈哈哈')
所谓else指的是循环正常结束之后要执⾏的代码,即如果是break终 ⽌循环的情况,else下⽅缩进 的代码将不执⾏。 i==3的时候,执⾏了break,⼀旦执⾏了break,else语句将不会执⾏了 所以不会执⾏原谅的代码
continue
i = 1
while i <= 5:
if i == 3:
i += 1
continue
print('媳妇⼉,我错了')
i += 1
else:
print('媳妇原谅我了,真开⼼呐,哈哈哈哈')
因为continue是退出当前⼀次循环,继续下⼀次循环,所以该循环 在continue控制下是可以正常 结束的,当循环结束后,则执⾏了else缩进的代码。
for..else
for 临时变量 in 序列:
重复执⾏的代码
...
else:
循环正常结束之后要执黑马程序员 www.itheima.com ⾏的代码
所谓else指的是循环正常结束之后要执⾏的代码,即如果是break终 ⽌循环的情况,else下⽅缩进 的代码将不执⾏。
for循环结合else中break和continue与while循环结合else中⼀致