python入门(3)分支

Tab按键:统一给选中的增加缩进;Shift+Tab:统一给选中的内容减少缩进。

一、if基础

  • ctrl + /:快捷键可以同时对多行进行注释或取消注释
  • 判断的定义:如果条件满足,才能做某件事情,如果条件不满足,就做另外一件事情,或者什么也不做。
  • 判断语句又被称为“分支语句”,正是因为有了判断,才让程序有了很多的分支
  • if语句用来进行判断,格式如下:
    if 要判断的条件:
    条件成立时,要做的事情

    else:
    条件不成立时,要做的事情

    注意:代码的缩进为一个tab键,或者4个空格,----建议使用空格,因为不同编译系统下,tab键代表的缩进量可能不同,tab键和空格不要混用
  • 没有else时,if语句以及缩进部分是一个完整的代码块
  • 有else时,if和else语句以及各自的缩进部分共同是一个完整的代码块
  • 案例判断语句演练—判断年龄
    需求:定义一个整数变量记录年龄,判断是否满18岁(>=),如果满18岁,允许进网吧,如果未满18岁,提示回家写作业
#定义一个整数变量记录年龄
age = int(input("请输入年龄:"))
# 判断是否满18岁(>=)
if age >= 18:
    # 如果满18岁,允许进网吧
    print("你已成年,欢迎进网吧")
else:
    # 如果未满18岁,提示回家写作业
    print("你还没有成年,请回家写作业吧")

二、运算符

  • 比较(关系)运算符
运算符描述
==检查两个操作数的值是否相等,如果是,则条件成立,返回True
!=检查两个操作数的值是否不相等,如果是,则条件成立,返回True
>检查左操作数的值是否大于右操作数的值,如果是,则条件成立,返回True
<检查左操作数的值是否小于右操作数的值,如果是,则条件成立,返回True
>=检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立,返回True
<=检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立,返回True
  • 逻辑运算符
    在判断条件时,会需要同时判断多个条件,只有多个条件都满足,才能够执行后续代码,这个时候需要使用到逻辑运算符,逻辑运算符可以把多个条件按照逻辑进行连接,变成更复杂的条件,逻辑运算符包括:与and 、 或or 、 非not 三种

与and:两个或多个条件需全部满足,才返回True;只要有一个条件不满足,就返回False。
或or:两个或多个条件只要有一个满足,返回True;所有条件都不满足时,才返回False。

三、逻辑运算符练习案例

练习1:定义一个整数变量age,编写代码判断年龄是否正确,要求人的年龄在1-120之间

# 定义一个整数变量age,编写代码判断年龄是否正确
age = 12
# 要求人的年龄在1-120之间
if age >= 0 and age <=120:
    print("年龄正确")
else:
    print("年龄不正确")

练习2:定义两个整数变量python_score、c_score,编写代码判断成绩,要求只要有一门成绩>60分就算合格

# 定义两个整数变量python_score、c_score,编写代码判断成绩
python_score = 55
c_score = 35
# 要求只要有一门成绩>60分就算合格
if python_score > 60 or c_score>60:
    print("考试通过")
else:
    print("考试失败,继续努力")

练习3:定义一个布尔型变量is_employee,编写代码判断是否是本公司员工,如果不是提示不允许入内。

# 定义一个布尔型变量is_employee,编写代码判断是否是本公司员工
is_employee = False
# 如果不是提示不允许入内。
if not is_employee:
    print("非本公司人员,请勿入内")

四、if语句进阶

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

  • elif 和 else 都必须和if联合使用,而不能单独使用
  • 可以将if、elif和else以及各自所进的代码,看成一个完整的代码块
  • elif演练–女友的节日
    需求:
    定义holiday_name 字符串变量记录节日名称
    如果是情人节,应该买玫瑰、看电影
    如果是平安夜,应该买苹果、吃大餐
    如果是生日,应该买蛋糕
    其他的日子每天都是节日啊
# 定义holiday_name 字符串变量记录节日名称
holiday_name = "生日"
# 如果是情人节,应该买玫瑰、看电影
if holiday_name == "情人节":
    print("买玫瑰")
    print("看电影")
# 如果是平安夜,应该买苹果、吃大餐
elif holiday_name == "平安夜":
    print("买苹果")
    print("吃大餐")
# 如果是生日,应该买蛋糕
elif holiday_name == "生日":
    print("买蛋糕")
# 其他的日子每天都是节日啊
else:
    print("每天都是节日啊")

五、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 = 30
# 首先检查是否有车票,如果有才允许进行安检
if has_ticket:
    print("车票检查通过,准备开始安检")
    # 安检时,需要检查刀的长度,判断是否超过20厘米
    if knife_length > 20:
        # 如果超过20厘米,提示刀的长度,不允许上车
        print("你携带的刀太长了,有 %d 公分长!" % knife_length)
        print("不允许上车")
    # 如果没有超过20厘米,安检通过
    else:
        print("安检已经通过,祝您旅途愉快!")
# 如果没有车票,不允许进门
else:
    print("大哥,请先买票")

六、综合案例–石头剪刀布

需求:
从控制台输入要出的拳,----石头(1)/剪刀(2)/布(3)
电脑随机出拳—先假定电脑只会出石头
比较胜负
在这里插入图片描述

#导入随机工具包
# import  random
# 从控制台输入要出的拳,----石头(1)/剪刀(2)/布(3)
import random

player = int(input("请输入您要出的拳--石头(1)/剪刀(2)/布(3):"))
# 电脑随机出拳---先假定电脑只会出石头
computer = random.randint(1,3)
print("玩家选择的拳头是 %d - 电脑出的拳是 %d" % (player,computer))
# 比较胜负
# 1 石头 胜  剪刀
# 2 剪刀 胜 布
# 3 布 胜 石头

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("不服气,我们决战到天明!")

七、随机数的处理

  • 在python中,要使用随机数,首先需要导入随机数的模块----工具包
    import random
  • 在导入工具包的时候,应该将导入的语句,放在文件的顶部,因为这样可以方便下方的代码,在任何需要的时候,使用工具包中的工具。

random.randint(a,b),返回[a,b]之间的整数,包含a和b

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值