python从入门到精通:判断语句

目录

前言

1、布尔类型和比较运算符

2、if语句的基本格式

[3、if else语句](#3、if else语句)

[4、if elif else语句](#4、if elif else语句)

5、判断语句的嵌套

6、实战演练



前言

逻辑判断是生活中常见的行为。同样,在程序中,进行逻辑判断也是最为基础的功能。

判断是程序最基础最核心的逻辑功能。

1、布尔类型和比较运算符

判断语句会产生两个结果:是或否,在程序中通过使用布尔类型来描述。

|----------|-----------------------------------------------------|
| 描述 | 说明 |
| 布尔(bool) | 布尔表示现实生活中的逻辑,即真(True)和假(False) True本质上是数字1,False记作0 |

定义变量存储布尔类型数据:

变量名称=布尔类型字面量

布尔类型不仅可以自行定义,同时也可以使用比较运算符进行比较运算得到布尔类型的结果。

python 复制代码
result = 10 >5
print("判断结果为%s,类型为{type(result)}")
# result_type = type(result);
# print("判断结果为%s,类型为%s" % (result, result_type))

比较运算符:

|-----|--------------------------------------|---------------|
| 运算符 | 描述 | 示例 |
| == | 判断内容是否相等,满足返回True,反之返回False | 如3==3,返回True |
| != | 判断内容是否不相等,满足返回True,反之返回False | 如1!=3,返回True |
| > | 判断运算符左侧内容是否大于右侧 满足返回True,反之返回False | 如7>3,返回True |
| < | 判断运算符左侧内容是否小于右侧 满足返回True,反之返回False | 如3<7,返回True |
| >= | 判断运算符左侧内容是否大于等于右侧 满足返回True,反之返回False | 如3>=3,返回True |
| <= | 判断运算符左侧内容是否小于等于右侧 满足返回True,反之返回False | 如3<=3,返回True |

2、if语句的基本格式

程序中的判断

if 要判断的条件:

执行内容

python 复制代码
age = 20;
if age >= 18:
    print("成年人")
# 归属于if判断的代码语句块,需在前方填充4个空格缩进,python通过缩进来判断代码块的归属

判断语句的结果,必须是布尔类型True或False,True会执行if内的代码语句,False则不会执行。

python 复制代码
# 案例:手动输入年龄判断是否需要补票(注意类型转换)
print("欢迎来到游乐园,儿童免费,成人收费")
age = input("请输入你的年龄:")
age = int(age)
if age >= 18:
    print("您已成年,需要补票")
print("祝您游玩愉快!")

3、if else语句

if else语句可以实现在不满足条件的情况下执行对应的代码。

if 条件:

执行内容1

执行内容2

...

else:

执行内容1

执行内容2

...

python 复制代码
print("欢迎来到游乐园,儿童免费,成人收费")
age = input("请输入你的年龄:")
age = int(age)
if age >= 18:
    print("您已成年,需要补票")
else:
    print("您未成年,可以免费游玩!")
print("祝您游玩愉快!")

1、else之后,不需要判断条件

2、和if的代码块一样,else的代码同样需要4个空格作为缩进

python 复制代码
# 案例:手动输入身高,判断是否超过120cm
print("欢迎来到动物园!")
height = int(input("请输入您的身高:"))
if height > 120:
    print("您的身高超过120cm,需要补票")
else:
    print("您的身高不足120cm,可以免费游玩")
print("祝您游玩愉快!")

4、if elif else语句

if elif else语句可以实现判断条件有多个的场景。

if 条件1:

执行内容

elif 条件2:

执行内容

...

elif 条件N:

执行内容

else:

所有条件都不满足时的执行内容

python 复制代码
print("欢迎来到动物园!")
height = int(input("请输入您的身高:"))
vip_level = int(input("请输入您的VIP级别(1~5):"))
day = int(input("请输入今天的日期(1~30):"))
if height < 120:
    print("您的身高不足120cm,可以免费游玩")
elif vip_level > 3:
    print("您的VIP等级大于3,可以免费游玩")
elif day == 1:
    print("1号是欢乐日,可以免费游玩")
else:
    print("不好意思,您需要补票")
print("祝您游玩愉快!")
# elif判断语句可以有多个

判断是互斥且有顺序的,空格缩进不能省略。

· 满足1条件将不会理会2和3

· 满足2,将不会理会3

· 1、2、3均不满足,进入else

· else也可以省略不写,效果等同于三个独立的if判断

python 复制代码
# 猜心里数字
num = 10;
if int(input("请输入第一次猜想的数字:")) == num:
    print("第一次就猜对了")
elif int(input("不对,再猜一次:")) == num:
    print("恭喜你,猜对了!")
elif int(input("不对,最后再猜一次:")) == num:
    print("恭喜你,猜对了!")
else:
    print("全部都不对,我想的是:%d" % num)

5、判断语句的嵌套

在很多场景中,不仅仅是多个并列条件,还会有满足前置条件才会二次判断的多层判断需求。

许多逻辑的判断,是嵌套的,多层次的。

对于这种需求,我们可以:自由组合 if elif else 完成特定需求的要求

基础语法格式:

if 条件1:

执行内容

if 条件2:

执行内容

如上图,第二个if内,只有第一个if满足条件,才会执行第二个if

嵌套语句的特点在于:空格缩进

通过空格缩进,来决定语句之间:层次关系

python 复制代码
print("欢迎来到动物园!")
height = int(input("请输入您的身高:"))
vip_level = int(input("请输入您的VIP级别(1~5):"))
if height > 120:
    print("你的身高大于120,不可以免费游玩")
    print("如果你的VIP等级高于3级可以免费")
    if vip_level > 3:
        print("您的VIP等级大于3,可以免费游玩")
    else:
        print("需要补票")
else:
    print("你可以免费游玩")
print("祝您游玩愉快!")
python 复制代码
# 案例:公司发礼物需要满足条件:1、年龄大于等于18小于30的成年人 2、同时入职时间满足需满足大于两年,或者级别大于3才可以领取
age = int(input("年龄:"));
year = int(input("入职年限:"))
level = int(input("级别:"))
if age >= 18:
    if age < 30:
        print("年龄达标")
        if year > 2:
            print("年龄达标,且入职时间大于两年,可以领取礼物")
        elif level > 3:
            print("级别达标的成年人,可以领取礼物")
        else:
            print("入职时间和级别均不达标")
    else:
        print("年龄超标了")
else:
    print("未成年")

6、实战演练

python 复制代码
# 随机产生一个数字范围再1~10,有三次判断机会,每次没猜到会提示大了或小了
# 产生一个随机数在
import random
num =random.randint(1,10)
# print(num)
guess_num = int(input("请输入您要猜测的数字:"))
# 通过if判断数字的猜测
if guess_num == num:
    print("恭喜你猜对了!")
else:
    if guess_num > num:
        print("猜大了!")
    elif guess_num < num:
        print("猜小了!")
    guess_num = int(input("再次输入您要猜测的数字:"))
    if guess_num == num:
        print("恭喜你猜对了!")
    else:
        if guess_num > num:
            print("猜大了!")
        elif guess_num < num:
            print("猜小了!")
        guess_num = int(input("第三次输入您要猜测的数字:"))
        if guess_num == num:
            print("恭喜你猜对了!")
        else:
            print("很遗憾,机会用完了,您未猜中")
相关推荐
白熊1881 分钟前
【图像大模型】ms-swift 深度解析:一站式多模态大模型微调与部署框架的全流程使用指南
开发语言·ios·swift
芒果茶叶5 分钟前
深入浅出requestAnimationFrame
前端·javascript·html
歪歪1007 分钟前
在哪些场景下适合使用 v-model 机制?
服务器·前端·javascript·servlet·前端框架·js
幸福清风7 分钟前
【Python】基于Tkinter库实现文件夹拖拽与选择功能
windows·python·microsoft·tkinter
亲爱的马哥9 分钟前
再见,TDuckX3.0 结束了
前端·后端·github
海琴烟Sunshine10 分钟前
leetcode 168. Excel 表列名称 python
python·算法·leetcode
KrystalMeiling22 分钟前
讲解react的useEffect用法,被监听字段的注意事项
前端
渣哥26 分钟前
Spring 创建 Bean 的多种方式对比与最佳实践
前端·javascript·面试
SanOrintea27 分钟前
electron中进程线程之间通信方式
服务器·javascript·electron
Copper peas30 分钟前
axios使用过程
前端·javascript·vue.js