python判断语句和循环语句
一、布尔类型和比较运算符
1、python中常用的有6种值(数据)的类型:
2、布尔类型的字面量
TRUE:表示真
FALSE:表示假
3、定义变量存储布尔类型数据
变量名 = 布尔类型字面量
4、比较运算符
5、实际操作
二、判断语句
1、if判断语句
程序中的判断:
if 要判断的条件:
条件成立时,要做的事情
if语句注意事项:
-判断条件的结果一定要是布尔类型
-不要忘记判断条件后的:冒号
-归属于if语句的代码块,需在前方填充4个空格缩进
实际操作:
2、if else语句
程序中的判断:
if 条件:
满足条件时要做的事情1
满足条件时要做的事情2
……
else:
不满足条件时要做的事情1
不满足条件时要做的事情2
……
if else语句的注意事项:
-else不需要判断条件,当if的条件不满足时,else执行
-else的代码块,同样要4个空格作为缩进
实际操作:
3、if elif else语句
程序中的判断:
if 条件1:
条件1满足应该做的事情
条件1满足应该做的事情
……
else 条件2:
条件2满足应该做的事情
条件2满足应该做的事情
……
else 条件N:
条件N满足应该做的事情
条件N满足应该做的事情
……
else:
所有条件都不满足应该做的事情
所有条件都不满足应该做的事情
……
if elif else语句的注意事项:
-elif可以写多个
-判断是互斥且有序的,上一个满足后面的就不会判断了
-可以在条件判断中,直接写input语句,节省代码量
实际操作:
4、判断语句的嵌套
很多逻辑的判断是嵌套的,是多层次的。对于这种需求我们可以:自由组合if elif else,完成特定需求的要求。
基本语法格式:
if 条件:
满足条件1 做的事情1
满足条件1 做的事情2
if 条件2:
满足条件2 做的事情1
满足条件2 做的事情2
嵌套判断语句的注意事项:
-嵌套判断语句可以用于多条件、多层次的逻辑判断
-嵌套判断语句可以根据需求,自由组合if elif else来构建多层次判断
-嵌套判断语句,一定要注意空格缩进,python通过空格缩进来决定层次关系
实际操作:
5、综合案例
案例要求:
-数字随机产生,范围1-10
-有3次机会猜测数字,通过3层嵌套判断实现
-每次猜不中,会提示大了或小了
提示:
通过如下代码,可以定义一个变量num,变量内存储随机数字。
import random
num = random.randint(1,10)
实际操作:
import random
num = random.randint(1,10)
guess_num = int(input("请输入你要猜的数字:"))
if guess_num == num:
print("恭喜你,第一次就猜对了")
else:
if guess_num > num:
print("你猜的数字大了")
else:
print("你猜的数字小了")
guess_num = int(input("请第二次输入你要猜测的数字:"))
if guess_num == num:
print("恭喜你,第二次猜对了")
else:
if guess_num > num:
print("你猜的数字大了")
else:
print("你猜的数字小了")
guess_num = int(input("请第三次输入你要猜测的数字:"))
if guess_num == num:
print("恭喜你,第三次猜对了")
else:
print("你的3次机会已用完,猜测错误")
三、循环语句
1、while循环的基础语法
程序中的循环:
while 条件:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
……
while循环的注意事项:
-条件需要提供布尔类型结果,True继续,False停止
-空格缩进不能忘
-请规划好循环终止条件,否则将无线循环
实际操作:
2、while循环的嵌套应用
程序中的循环循环:
while 条件1:
条件1满足时 做的事情1
条件1满足时 做的事情2
条件1满足时 做的事情3
……
while 条件2:
条件2满足时 做的事情1
条件2满足时 做的事情2
条件2满足时 做的事情3
……
嵌套循环的注意事项:
-注意条件的控制,避免无线循环
-多层嵌套,主要空格缩进来确定层次关系
实际操作:
3、while循环综合案例:
补充知识:
-print语句输出内容会自动换行,输出不换行的实现方式:在print语句中,加上end=''即可。
-制表符\t,效果等同于在键盘上按下:tab键,他可以让我们的多行字符串进行对齐。
案例要求:
通过while循环,输出如下九九乘法表内容。
实际操作:
i = 1
while i <= 9:
j = 1
while j <= i:
print(f"{j} * {i} = {j * i}\t",end='')
j += 1
i += 1
print() #print空内容,就是输出一个换行
4、for循环的基础语法
for循环与while循环的区别:
-while循环的循环条件是自定义的,自行控制循环条件
-for循环是一种“l轮询”机制,是对一批内容进行“逐个处理”
程序中的for循环:
for 临时变量 in 待处理数据集(序列类型):
循环满足条件时执行的代码
# 序列类型指,其内容可以一个个依次取出的一种类型,包括:字符串、列表、元组等
for循环的注意事项:
-无法定义循环条件,只能被动取出数据处理
-要注意,循环内的语句,需要有空格缩进
实际操作:
5、range语句
range语句的语法格式:
# 语法:1:
range(num)
# 获取一个从0开始,到num结束的数字序列(不含num本身)
# 语法2:
range(num1,num2)
# 获得一个从num1开始,到num2结束的数字序列(不含num2本身)
# 语法3:
range(num1,num2,step)
# 获得一个从num1开始,到num2结束的数字序列(不含num2本身)
# 数字之间的步长,以step为准(step默认为1)
range语句的注意事项:
-语法1从0开始,到num结束(不含num本身)
-语法2从num1开始,到num2结束(不含num2本身)
-语法3从num1开始,到num2结束(不含num2本身),步长以step为准
实际操作:
6、for循环的临时变量作用域
for 临时变量 in 待处理数据集(序列类型):
循环满足条件时执行的代码
临时变量,在编程规范上,作用范围(作用域),只限定在for循环内部
如果在for循环外部访问临时变量:
-实际上是可以访问到的
-在编程规范上,是不允许,不建议这么做的
-如需访问临时变量,可以预先在循环外定义它
7、for循环的嵌套应用
程序中的嵌套for循环:
for 临时变量 in 待处理数据集(序列):
循环满足条件应做的事情1
循环满足条件应做的事情2
循环满足条件应做的事情N
……
for 临时变量 in 待处理数据集(序列):
循环满足条件应做的事情1
循环满足条件应做的事情2
循环满足条件应做的事情N
嵌套for循环的注意事项:
-需要注意缩进,嵌套for循环同样通过缩进确定层次关系
-for循环和while循环可以相互嵌套使用
实际操作:
8、循环中断:break和continue
continue:
-continue关键字用于:中断本次循环,直接进入下一次循环
-continue可以用于 :for循环和while循环,效果一致
实际操作:
break:
-break关键字用于:直接结束循环
-break可以用于:for循环和while循环,效果一致
实际操作:
9、for循环综合案例
案例要求:
某公司,账户余额有1w元,给20名员工发工资。
-员工编号从1到20,从编号1开始,依次领取工资,每人可领1000元
-领工资时,财务判断员工的绩效分(1-10)(随机生成),如果低于5,不发工资,换下一位
-如果工资发完了,结束发工资
提示:
-使用循环对员工依次发放工资
-continue用于跳过员工,break直接结束发工资
-随机数可以用:
import random
num = random.randint(1,10)
实际操作:
import random
acount = 10000
for i in range(1, 21):
j = random.randint(1, 10)
if j < 5:
print(f"员工编号为{i}的员工绩效为{j},低于5,不发放工资")
continue
if acount >= 1000:
acount -= 1000
print(f"员工编号为{i}的员工工资为1000元,公司账户余额为{acount}")
else:
print(f"公司账户当前余额为{acount},余额不足,不发放工资")
break
学习链接:https://www.bilibili.com/video/BV1qW4y1a7fU?p=29