学习笔记 - python笔记3 if判断

判断语句

if判断语句介绍

if语句是用来进行判断的,其使用格式如下:

if 要判断的条件:
  条件成立时,要做的事情

demo:

name = '星语'
if name == '星语':
    print('你好,星语')

if-else

在使用if的时候,它只能做到满足条件时要做的事情。那万一需要在不满足条件的时候,做某些事,该怎么办呢?
答:使用 if-else
if-else的使用格式:

if 条件:
  满足条件时要做的事情
else:
  不满足条件时要做的事情

demo

age = 18
if age <= 18:
    print('你成年了,可以康康')
else:
    print('你还没成年噢,不能看这种东西')

elif

想一想:

如果有这样一种情况:当条件A满足时做事情1;当条件A不满足、条件B满足时做事情2;当条件B不满足、条件C满足时做事情3,那该怎么实现呢?


这就需要用到 elif

elif的功能

elif的使用格式如下:

if xxx1:
  事情1
elif xxx2:
  事情2
elif xxx3:
  事情3

说明:

当xxx1满足时,执行事情1,然后整个if结束
当xxx1不满足时,那么判断xxx2,如果xxx2满足,则执行事情2,然后整个if结束
当xxx1不满足时,xxx2也不满足,如果xxx3满足,则执行事情3,然后整个if结束


demo:

score = 77

if score >= 90 and score <= 100:
    print('本次考试,等级为A')
elif score >= 80 and score < 90:
    print('本次考试,等级为B')
elif score >= 70 and score < 80:
    print('本次考试,等级为C')
elif score >= 60 and score < 70:
    print('本次考试,等级为D')
elif score >= 0 and score < 60:
    print('本次考试,等级为E')

注意点


可以和else一起使用

if 性别为男性:
    输出男性的体重
    ...
elif 性别为女性:
    输出女性的体重
    ...
else:
    第三种性别的体重
    ...

elif必须和if一起使用,否则出错 else 一般用在最后,即所有条件都不满足时使用

比较(即关系)运算符

运算符描述示例
==检查两个操作数的值是否相等,如果是则条件变为真。如a=3,b=3,则(a == b) 为 True
!=检查两个操作数的值是否相等,如果值不相等,则条件变为真。如a=1,b=3,则(a != b) 为 True
>检查左操作数的值是否大于右操作数的值,如果是,则条件成立。如a=7,b=3,则(a > b) 为 True
<检查左操作数的值是否小于右操作数的值,如果是,则条件成立。如a=7,b=3,则(a < b) 为 False
>=检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。如a=3,b=3,则(a >= b) 为 True
<=检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。如a=3,b=3,则(a <= b) 为 True

逻辑运算符

运算符逻辑表达式描述示例
andx and y布尔"与":如果 x 为 False,x and y 返回 False,否则它返回 y 的值。True and False, 返回 False。
orx or y布尔"或":如果 x 是 True,它返回 True,否则它返回 y 的值。False or True, 返回 True。
notnot x布尔"非":如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。not True 返回 False, not False 返回 True

if嵌套

想一想:

坐火车或者地铁的实际情况是:先进行安检如果安检通过才会判断是否有车票,或者是先检查是否有车票之后才会进行安检,即实际的情况某个判断是再另外一个判断成立的基础上进行的,这样的情况该怎样解决呢?

if嵌套的格式

if 条件1:
    满足条件1
    做的事情1
    满足条件1
    做的事情2

    if 条件2:
        满足条件2
        做的事情1
        满足条件2
        做的事情2
  • 外层的if判断,也可以是if-else
  • 内层的if判断,也可以是if-else
  • 根据实际开发的情况,进行选择

    if嵌套的应用

    chePiao = 1  # 用1代表有车票,0代表没有车票
    daoLenght = 9  # 刀子的长度,单位为cm
    
    if chePiao == 1:
      print("有车票,可以进站")
      if daoLenght < 10:
          print("通过安检")
      else:
          print("没有通过安检")
          print("刀子的长度超过规定,等待警察处理...")
    else:
      print("没有车票,不能进站")
    

if 的补充知识

区间比较

a = 10
1 < a < 20  # True
11 < a < 20  # False

三元运算符

格式: 变量 = 值1 if 条件 else 值2
当条件成立时把 值1 赋值给变量,条件不成立时把 值2 赋值给变量。

a = 10
b = 20
c = a if a > b else b
print(c)  # 条件不成立,把 b 的值赋给 c,也就是 c 的值为 20

数字的逻辑运算

a = 0
b = 1
c = 3

# and 运算,只要有一个值为 0 则结果为0,否则结果为最后一个非 0 数字
a and b  # 0
b and a  # 0
c and b  # 1
b and c  # 3

# or 运算,只有所有值为 0 结果才为0,否则结果为第一个非 0 数字
a or a  # 0
a or b  # 1
b or a  # 1
c or b  # 3
b or c  # 1
打赏
评论区
头像