为什么要学习判断语句?
判断在程序中广泛应用(密码判断,指纹识别,app登陆等)
一.布尔类型和比较运算符
1.布尔类型数据
在布尔类型数据中只有两个数据,分别为True(真),False(假),而它们本质上是两个数字,分别为1和0(二进制)
布尔类型的数据不仅可以通过定义得到,也可以通过比较运算符进行内容比较而得到
2.比较运算符
>:大于
<:小于
==:等于
!=:不等
>=:大于等于
<=:小于等于
注意:单个等号是赋值符号,双等号才是判断是否相等
二.if语句的基本格式
1.判断语句的使用方法:
if 要判断的条件:
条件成立时要做什么
注意:
判断语句的结果必须是布尔类型的数据
True会执行if内的代码语句
False则不会执行
在if之后缩进了的代码部分才是if内的代码语句
三.if else语句
if会在满足条件时执行相应的代码语句,那么如果不满足呢?
1.if else语句的使用方法
if 条件:
满足条件时要做的事1
满足条件时要做的事2
......
else:
不满足条件时要做的事1
不满足条件时要做的事2
...
注意:
1.else之后不需要判断条件
2.属于else的代码块中同样需要缩进
四.if elif else语句
1.应用场景:
在某些情况下,判断条件不止一个,那么就需要使用本条语句判断多个条件
2.使用方法:
if 条件1:
条件1满足时完成的事件1
条件1满足时完成的事件2
...
elif 条件2:
条件2满足时完成的事件1
条件2满足时完成的事件2
...
elif 条件n:
条件n满足时完成的事件1
条件n满足时完成的事件2
...
else:
所有条件都不满足时完成的事件1
所有条件都不满足时完成的事件2
...
注意:
1.elif语句可以写多个,即可以添加多个条件,只是要确保开头是if,结尾是else
2.判断是互斥并且有序的,一旦满足条件就不会继续往下判断了
3.可以在条件判断中直接写input语句使代码更简洁
五.判断语句的嵌套
1.应用场景:
在很多情况下我们不仅需要使用到多个并列条件,还有满足前置条件才会进行二次判断的多层判断需求
2.使用方法:
if 条件1:
满足条件1完成的事件1
满足条件1完成的事件2
...
if 条件2:
满足条件2完成的事件1
满足条件2完成的事件2
...
注意:
1.嵌套的关键点在于空格缩进
2.通过不同的空格缩进确定判断语句的层级关系(第一层缩进一次,第二层缩进两次,依次类推)
六.简单案例
需求:
定义一个数字在1到10之间随机产生,通过三次判断来猜出数字
要求:
1.数字在1到10之间随机产生
2.有三次机会猜测数字,通过3层嵌套判断实现
3.每次没猜中都会提示大了或者小了
import random
num = random.randint(1,10)
guess = int(input("请输入你猜测的数字:"))
if guess == num:
print("你猜中了")
else:
if guess > num:
print("大了")
elif guess < num:
print("小了")
guess = int(input("请输入你第二次猜测的数字:"))
if guess == num:
print("你猜中了")
else:
if guess > num:
print("大了")
elif guess < num:
print("小了")
guess = int(input("请输入你第三次猜测的数字:"))
if guess == num:
print("你猜中了")
else:
print("三次机会耗尽,你失败了")