自学Python第6天:if判断、if-else、if-elif-else和嵌套判断

自学Python第6天:if判断、if-else、if-elif-else和嵌套判断------我终于能让程序自己做决定了

新手向 | 2026-06-28

如果你还记得第五篇的内容,我写了一个体温检测程序:

python 复制代码
temp = float(input("请输入你的体温:"))
if temp <= 37.5:
    print("体温正常请进!")

当时的问题是:体温超过37.5度时,程序什么都不做,直接就结束了。但是在现实生活中,体温过高应该给出不一样的提示。

今天就来把这个问题彻底解决。

一、if语句:做一次判断

复习一下if的基本写法:

python 复制代码
temp = float(input("请输入您的体温:"))
if temp <= 37.5:
    print("体温正常请进!")

if的意思是:如果条件成立,就执行下面的代码;如果条件不成立,就跳过。

if 虽然能做判断,但它的局限在于只能处理"成立"的情况,不成立时没有任何反应那如果体温偏高,我想提示"需要隔离",该怎么办?

二、if-else:两条路选一条

else解决了"条件不成立时做什么"的问题:

python 复制代码
temp = float(input("请输入你的体温:"))
if temp <= 37.5:
    print("体温正常请进!")
else:
    print("体温异常,需要隔离!")

if-else的意思是:如果条件成立,走第一条路;否则走第二条路。

它的局限在于:只能处理两种情况。如果我想区分"低烧"和"高烧",if-else就不够用了。那有没有办法处理三种或更多情况呢?

三、if-elif-else:多条路选一条

elif 是"else if"的缩写,意思是"否则如果......",可以连续写多个:

python 复制代码
temp = float(input("请输入你的体温:"))
if temp <= 37.5:
    print("体温正常请进!")
elif temp <= 38.5:
    print("体温偏高,请到观察区休息。")
else:
    print("体温过高,需要隔离!")

这段代码的逻辑是:先判断是否正常,正常就直接进门;不正常再判断是否只是低烧,低烧就去观察区;如果两个条件都不满足(高于 38.5),才去隔离。

if-elif-else 的工作方式是从上到下依次检查,一旦有某个条件满足,就执行对应的代码,然后跳过剩下的所有条件。

不过 if-elif-else 也有一个问题:它的每个条件是独立判断的。如果判断条件本身很复杂------比如"体温正常且健康码为绿码"------一个条件就没法同时表达两个要求。

四、判断语句的嵌套:层层检查

有时候,你需要先检查一个条件,通过了再检查下一个。这种"判断里面套判断"的写法叫嵌套判断。

python 复制代码
temp = float(input("请输入你的体温:"))
code = input("请输入健康码状态(绿码/黄码/红码):")

if temp <= 37.5:
    if code == "绿码":
        print("体温正常,健康码正常,请进!")
    else:
        print("体温正常,但健康码异常,请到人工窗口处理。")
else:
    print("体温异常,需要隔离!")

嵌套判断的逻辑是:先检查第一关,通过了再检查第二关,一关一关往下走。

第一关查体温,体温正常的才进入第二关查健康码;体温不正常的直接拦截,不再往下查。这种层层过滤的处理方式在实际开发中非常常见。

如果你觉得嵌套的代码缩进太多不好读,也可以把两个条件合并成一个逻辑表达式:

python 复制代码
if temp <= 37.5 and code == "绿码":
    print("体温正常,健康码正常,请进!")

这种方式更简洁,但只适用于"同时满足"的场景。如果第二个条件在第一个条件不通过时还要做不同的事情,还是需要用嵌套。

五、综合示例:完整的安检程序

把今天学的东西串起来,写一个更完整的安检程序:

python 复制代码
def security_check():
    print("=" * 30)
    print("      欢迎进入安检系统")
    print("=" * 30)
    
    temp = float(input("请测量并输入您的体温:"))
    code = input("请输入健康码状态(绿码/黄码/红码):")
    
    # 第一关:体温检查
    if temp <= 37.5:
        # 第二关:健康码检查
        if code == "绿码":
            print(" 体温正常,健康码正常,欢迎进入!")
        else:
            print(" 体温正常,但健康码异常,请到人工窗口处理。")
    else:
        print(" 体温异常,需要隔离!")
        # 嵌套可以继续深入
        if temp >= 39.0:
            print(" 您的高温警报已触发,请联系医护人员。")

security_check()

运行结果(输入36.5和"绿码"):

text 复制代码
==============================
      欢迎进入安检系统
==============================
请测量并输入您的体温:36.5
请输入健康码状态(绿码/黄码/红码):绿码
 体温正常,健康码正常,欢迎进入!

这段代码展示了今天学的四种判断结构:

·if:判断体温是否正常

·if-else:体温正常/异常的分支

·if-elif-else:也可以用于处理健康码绿码/黄码/红码三种状态(本例未展开说明)

·嵌套判断:先查体温,再查健康码,层层过滤

小结

今天学的东西,整理成一张速查表:

知识点 适用场景 示例
if 只关心"成立"时做什么 if temp <= 37.5: print("正常")
if-else 两种情况二选一 if ...: ... else: ...
if-elif-else 三种及以上情况多选一 if ...: ... elif ...: ... else: ...
嵌套判断 需要层层检查,每层处理不同 先查体温再查健康码

什么时候用哪种?

·只需判断一种情况 → if

·两种情况二选一 → if-else

·三种或更多情况 → if-elif-else

·多个条件之间有递进关系(先检查A,再检查B) → 嵌套判断

下一篇我打算学 for 循环和 while 循环。

如果你也在学Python,欢迎在评论区告诉我你今天学到了什么,或者遇到了什么报错,一起交流!

相关文章: