第 3 章 判断语句

if 语句

if判断语句的基本语法

在python中,if语句就是用来进行判断的,格式如下:

if 要判断的条件:
    条件成立时,要做的事情
    ...
  • 注意:代码的缩进为一个tab键,或者4个空格–不建议使用空格,不要tab键和空格混合使用
  • if与下面缩进的代码为一个整体的代码块儿
示例代码:
  • 需求
    • 定义一个整数变量记录年龄
    • 判断是否满18岁
    • 如果满18岁,允许进入网吧嗨皮!
    • 未满18,不得进入!
# 1、定义一个整数变量记录年龄
age = int(input("请输入您的实际年龄:"))
# 2、判断年龄是否满足18岁
if age >= 18 :
# 3、如果满了18岁,可以进网吧嗨皮!
    print("您已经成年,欢迎来到德莱联盟!")
# 4、未满18岁,不得进入!
else :
    print("小学生,回家写作业去吧!")

if和else语句以及各自的缩进部分共同是一个完整的代码块

逻辑运算

  • 在程序开发中,通常在判断时,会需要同时判断多个条件。
  • 只有多个条件都满足,才能执行后续的代码,这个时候就需要使用到逻辑运算符。
  • 逻辑运算符可以把多个天健按照逻辑进行连接,变成更复杂的条件
  • python中逻辑运算符包括:与and/或or/非nor三种
and 与
  • 格式
    • 条件一 and 条件二
  • 两个条件同时满足,返回True.
  • 只要有一个不满足,就返回False.
or 或
  • 格式
    • 条件一 or 条件二
  • 两个条件只要满足一个,返回True.
  • 两个条件都不满足,返回False.
not 非
  • 格式
    • not 条件
  • 取反,真的为假,假的为真。
实例代码
  • 需求
    • 定义一个变量age,编写代码判断年龄是否正确。
      • 要求人的年龄在0-120之间。
      #  定义一个变量age, 编写代码判断年龄是否正确。
      # age = int(input('请输入您的真实年龄:'))
      #  要求人的年龄在0 - 120之间。
      if age >= 0 and age <= 120:
          print('年龄符合条件,您是个人!')
      else:
          print('龟丞相?')
      
    • 定义两个整数变量python_score、c_score,编写代码判断成绩,
      • 要求只要一门成绩>60分就算合格。
      #  定义两个整数变量python_score、c_score, 编写代码判断成绩,
      python_score = 50
      c_score = 59
      #  要求只要一门成绩 >= 60分就算合格。
      if python_score >= 60 or c_score >= 60:
          print('成绩合格,继续努力!')
      else:
          print('成绩不合格,去重修!')
      
    • 定义一个布尔类型的变量is_employee,编写代码判断是否是本公司员工。
      • 如果不是提示不允许入内
      • 如果是欢迎上班!
      #  定义一个布尔类型的变量is_employee, 编写代码判断是否是本公司员工。
      is_employee = True
      #  如果不是提示不允许入内
      if not is_employee:
          print('快快走开!')
      #  如果是欢迎上班!
      else:
          print('下次早点来,没事多加点班!')
      
      • 此处的if not is_employee 相当于 if is_employee == False
      • not与!=的区别一定要理解

elif —— 平级的多个判断

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

  • 在开发中,使用if可以判断条件
  • 使用else可以处理条件不成立的情况
  • 如果希望条件不同,执行的代码也不同,就可以使用elif.
  • 格式:
    • if 条件一:
      • 条件一满足时执行的代码
    • elif 条件二:
      • 条件二满足时执行的代码
    • else:
      • 以上条件都不满足时,执行的代码。
代码示例 - 女友的节日
  • 需求:
    • 定义 holiday_name 字符串变量记录节目名字
    • 如果是情人节应该买玫瑰、看电影
    • 若果是平安夜应该买苹果、吃大餐
    • 如果是生日应该买蛋糕、送礼物
    • 其他日子每天都是节日…
    # 定义 holiday_name 字符串变量记录节目名字
    holiday_name = input('卧槽!今天又要过啥节?')
    # 如果是情人节应该买玫瑰、看电影
    if holiday_name == '情人节':
        print('买玫瑰、看电影、记得带身份证!')
    # 若果是平安夜应该买苹果、吃大餐
    elif holiday_name == '平安夜':
        print('买苹果、吃大餐')
    # 如果是生日应该买蛋糕、送礼物
    elif holiday_name == '生日':
        print('买蛋糕、送礼物')
    # 其他日子每天都是节日...
    else:
        print('gun!')
    

if嵌套

  • 在开发中,使用if进行条件判断,如果希望在条件成立的执行语句中再增加条件判断,就可以使用if的嵌套
  • if嵌套的应用场景就是:在之前的条件满足的前提下,再增加额外的判断
  • 格式:
if 条件一:
    条件一满足执行的代码
    ...
    if 条件一 基础上的条件2:
        条件2满足时执行的代码
        ...
    else:
        条件2不满足时执行的代码
        ...
else:
    条件一不满足时执行的代码
    ...
代码示例
  • 需求:
    • 定义布尔型变量 has_ticket 表示是否有车票
    • 定义整型变量 Knife_length 表示刀的长度
      -首先检查是否有车票,如果有,才能允许进行安检
      • 安检时,检查的刀的长度,判断是否超过20厘米
      • 如果超过20厘米,不允许上车
        不吵20,安检通过
# 定义布尔型变量 has_ticket 表示是否有车票
has_ticket =False
# 定义整型变量 Knife_length 表示刀的长度

# 首先检查是否有车票,如果有,才能允许进行安检
if has_ticket:
    print('有车票,请进行安检')
    knife_length = float(input('您的刀有多长?有40米吗?'))
    # 安检时,检查的刀的长度,判断是否超过20米
    if knife_length >= 20.0:
    # 如果超过20厘米,不允许上车
        print('好大的刀啊,有 %d 厘米长呢,没收作案工具!'% knife_length)
    # 不超20,安检通过
    else:
        print('安检通过')
else:
    print('请先去买票')

随机数的处理

  • 在python中,要使用随机数,首先需要导入随机数的模块—“工具包”
import random
  • 导入模块后,可以直接在模块名称后面敲一个.然后Tab键,会提示该模块中包含的所有函数
  • random.randint(a.b),返回[a,b]之间的整数,包含ab
  • 例如:
rand.randint(12,20)  # 生成的随机数n:12 <=n <= 20
rand.randint(20,20)  # 结果永远都是20
rand.randint(20,18)  # 错误,下限必须小于上限
代码示例
  • 需求
    • 与电脑进行猜拳游戏
    • 用数字表示,石头(1)、剪刀(2)、布(3)
# 导入随机工具包
import random
# 从控制台输入玩家要出的拳头-石头(1)、剪刀(2)、布(3)
player = int(input('请输入您要出的拳-石头(1)、剪刀(2)、布(3):'))
if (player == 1 or player == 2 or player == 3):
    # 电脑随机出拳
    computer = random.randint(1,3)
    print('玩家出的拳是 %d ,电脑出的拳是 %d.'%(player,computer))
    # 比较胜负,玩家赢
    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('这局不算,重来。')
else:
    print('请输入正确的格式!')·
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值