4_python基础—判断(if)语句(下)

简介: 4_python基础—判断(if)语句

四、 if 语句进阶


4.1 elif


  • 在开发中,使用 if 可以 判断条件
  • 使用 else 可以处理 条件不成立 的情况
  • 但是,如果希望 再增加一些条件条件不同,需要执行的代码也不同 时,就可以使用 elif
  • 语法格式如下:
if 条件1:
    条件1满足执行的代码
    ……
elif 条件2:
    条件2满足时,执行的代码
    ……
elif 条件3:
    条件3满足时,执行的代码
    ……
else:
    以上条件都不满足时,执行的代码
    ……
  • 对比逻辑运算符的代码


if 条件1 and 条件2:
    条件1满足 并且 条件2满足 执行的代码



注意


elif 和 else 都必须和 if 联合使用,而不能单独使用

可以将 if、elif 和 else 以及各自缩进的代码,看成一个 完整的代码块

elif 演练 —— 女友的节日


需求


定义 holiday_name 字符串变量记录节日名称

如果是 情人节 应该 买玫瑰/看电影

如果是 平安夜 应该 买苹果/吃大餐

如果是 生日 应该 买蛋糕

其他的日子每天都是节日啊……


holiday_name = "平安夜"
if holiday_name == "情人节":
    print("买玫瑰")
    print("看电影")
elif holiday_name == "平安夜":
    print("买苹果")
    print("吃大餐")
elif holiday_name == "生日":
    print("买蛋糕")
else:
    print("每天都是节日啊……")

4.2 if嵌套


elif 的应用场景是:同时 判断 多个条件,所有的条件是 平级


  • 在开发中,使用 if 进行条件判断,如果希望 在条件成立的执行语句中增加条件判断,就可以使用 if 的嵌套
  • if 的嵌套 的应用场景就是:在之前条件满足的前提下,再增加额外的判断
  • if 的嵌套 的语法格式,除了缩进之外 和之前的没有区别
  • 语法格式如下:
if 条件 1:
    条件 1 满足执行的代码
    ……
    if 条件 1 基础上的条件 2:
        条件 2 满足时,执行的代码
        ……    
    # 条件 2 不满足的处理
    else:
        条件 2 不满足时,执行的代码
# 条件 1 不满足的处理
else:
    条件1 不满足时,执行的代码
    ……


if 的嵌套 演练 —— 火车站安检


需求


定义布尔型变量 has_ticket 表示是否有车票

定义整型变量 knife_length 表示刀的长度,单位:厘米

首先检查是否有车票,如果有,才允许进行 安检

安检时,需要检查刀的长度,判断是否超过 20 厘米

如果超过 20 厘米,提示刀的长度,不允许上车

如果不超过 20 厘米,安检通过

如果没有车票,不允许进门


# 定义布尔型变量 has_ticket 表示是否有车票
has_ticket = True
# 定义整数型变量 knife_length 表示刀的长度,单位:厘米
knife_length = 20
# 首先检查是否有车票,如果有,才允许进行 安检
if has_ticket:
    print("有车票,可以开始安检...")
    # 安检时,需要检查刀的长度,判断是否超过 20 厘米
    # 如果超过 20 厘米,提示刀的长度,不允许上车
    if knife_length >= 20:
        print("不允许携带 %d 厘米长的刀上车" % knife_length)
    # 如果不超过 20 厘米,安检通过
    else:
        print("安检通过,祝您旅途愉快……")
# 如果没有车票,不允许进门
else:
    print("大哥,您要先买票啊")


五、综合应用 —— 石头剪刀布


目标


  1. 强化 多个条件逻辑运算
  2. 体会 import 导入模块(“工具包”)的使用


需求


  1. 从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3)
  2. 电脑 随机 出拳 —— 先假定电脑只会出石头,完成整体代码功能
  3. 比较胜负


image.png


5.1 基础代码实现


  • 假定电脑就只会出石头,完成整体代码功能
# 从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3)
player = int(input("请出拳 石头(1)/剪刀(2)/布(3):"))
# 电脑 随机 出拳 - 假定电脑永远出石头
computer = 1
# 比较胜负
# 如果条件判断的内容太长,可以在最外侧的条件增加一对大括号
# 再在每一个条件之间,使用回车,PyCharm 可以自动增加 8 个空格
if ((player == 1 and computer == 2) or
        (player == 2 and computer == 3) or
        (player == 3 and computer == 1)):
    print("噢耶!!!电脑弱爆了!!!")
elif player == computer:
    print("心有灵犀,再来一盘!")
else:
    print("不行,我要和你决战到天亮!")

5.2 随机数的处理


  • Python 中,要使用随机数,首先需要导入 随机数模块 —— “工具包”


import random


  • 导入模块后,可以直接在 模块名称 后面敲一个 . 然后按 Tab 键,会提示该模块中包含的所有函数。(在ipytthon3中)
  • random.randint(a, b) ,返回 [a, b] 之间的整数,包含 ab
  • 例如:
random.randint(12, 20)  # 生成的随机数n: 12 <= n <= 20   
random.randint(20, 20)  # 结果永远是 20   
random.randint(20, 10)  # 该语句是错误的,下限必须小于上限

六、总结


  • if语句语法
if 要判断的条件:
    条件成立时,要做的事情
    ……


  • if···else···


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


  • 多重判断


if 条件1:
    条件1满足执行的代码
    ……
elif 条件2:
    条件2满足时,执行的代码
    ……
elif 条件3:
    条件3满足时,执行的代码
    ……
else:
    以上条件都不满足时,执行的代码
    ……


  • if嵌套
if 条件 1:
    条件 1 满足执行的代码
    ……
    if 条件 1 基础上的条件 2:
        条件 2 满足时,执行的代码
        ……    
    # 条件 2 不满足的处理
    else:
        条件 2 不满足时,执行的代码
# 条件 1 不满足的处理
else:
    条件1 不满足时,执行的代码
    ……


目录
相关文章
|
8月前
|
Python
Python中 If语句条件测试
Python中 If语句条件测试
87 1
|
8月前
|
Python
python中if语句(二)
python中if语句(二)
65 0
|
8月前
|
Python
python中if语句(一)
python中if语句(一)
100 0
|
8月前
|
Python
Python if语句
Python if语句
|
Python
11 python - if else / elif / if嵌套
11 python - if else / elif / if嵌套
85 0
|
Python
python之if语句的单分支,双分支,多分支,if逻辑运算符or,if逻辑运算符and,if语句的嵌套的定义及其使用方法
python之if语句的单分支,双分支,多分支,if逻辑运算符or,if逻辑运算符and,if语句的嵌套的定义及其使用方法
242 0
|
8月前
|
Python
【Python操作基础】——if语句用法
【Python操作基础】——if语句用法
|
8月前
|
Python
python中if __name__ == '__main__'
python中if __name__ == '__main__'
57 3
Python控制流:条件语句(if, elif, else)
本文详细介绍了Python条件语句的使用方法,包括if、elif和else,以及条件表达式和多条件判断。通过一个综合详细的例子,我们展示了条件语句在实际编程中的应用。希望本文对您理解和应用Python条件语句有所帮助。
|
8月前
|
Python
Python基础语法,解释一下Python中的if __name__ == "__main__"。
Python基础语法,解释一下Python中的if __name__ == "__main__"。
80 2