美文网首页
python的条件分支——零基础学python 007

python的条件分支——零基础学python 007

作者: jammny | 来源:发表于2020-01-20 15:54 被阅读0次

    前言

    if else条件语句在之前博客也有讲到,这里就不在啰嗦了。接下会用实例演示怎么使用if else条件分支?使用条件分支的好处是什么?怎么使用条件表达式(三元操作符)来简化自己的代码?认识assert(断言)关键字

    目录:

    if else 条件分支

    假如按照100分制,90分或者以上成绩为A,80到90为B,60到80为C,60以下为D,写一个程序当用户输入分数自动转换为ABCD的形式打印。该怎么写呢?用条件分支大概可以写成写下面三种。

    第一种:

    score = float(input("请输入成绩:"))
    if(score < 0 or score > 100):
        print("输入成绩错误!设定范围0到100!")
    if(score>=90):
        print("成绩评级为:A")
    if(80<=score<90):
        print("成绩评级为:B")
    if(60<=score<80):
        print("成绩评级为:C")
    if(score<60):
        print("成绩评级为:D")
    

    可以知道,程序每一条if语句是独立的,前后没有必然联系,是按照顺序执行的。如果我们输入101分的话,它判断是成绩错误之后,依然会继续执行后面的程序,判断是否为A是否为B,那么就会导致时间上资源的浪费。

    第二种:

    score = float(input("请输入成绩:"))
    if(score < 0 or score > 100):
        print("输入成绩错误!")
    else:
        if(score >= 90):
            print("成绩评级为:A")
        else:
            if(80 <= score < 90):
                print("成绩评级为:B")
            else:
                if(60 <= score < 80):
                    print("成绩评级为:C")
                else:
                    if(score < 60):
                        print("成绩评级为:D")
          
    

    第三种:

    score = float(input("请输入成绩:"))
    if(score < 0 or score > 100):
        print("输入成绩错误!")
    elif(score >= 90):
        print("成绩评级为:A")
    elif(80 <= score < 90):
        print("成绩评级为:B")
    elif(60 <= score < 80):
        print("成绩评级为:C")
    else:
        print("成绩评级为:D")
    

    第二种和第三种其实效果是一样的,只不过第三种的写法更简洁。elif语句,其实就是else if 缩写罢了。

    条件表达式(三元操作符)

    用一条语句完成条件判断和赋值的操作,num = a if (a < b) else b ,这就是三元操作符的条件表达式,如果if后面的条件成立就把a赋值给num,否则就把b赋值给num。
    比如我写了一个比较任意两个数大小的程序:

    a = float(input("请输入第一个数:"))
    b = float(input("请输入第二个数:"))
    if(a<b):
        small = str(a)
        big = str(b)
        print("比较小的是:"+ small)
        print("比较大的是:"+ big)
    else:
        small = str(b)
        big = str(a)
        print("比较小的是:"+ small)
    print("比较大的是:"+ big)
    

    用三元操作符的条件表达式改进:

    a = float(input("请输入第一个数:"))
    b = float(input("请输入第二个数:"))
    small = str(a if (a<b) else b)
    big = str(b if (a<b) else a)
    print("比较小的是:" + small)
    print("比较大的是:" + big)
    

    显然简介了很多啦!

    关键字:assert(断言)

    assert关键字后边的条件如果为假,程序会抛出异常AssertionError,比如


    在这里插入图片描述

    3>4的条件是假的,所以提示异常;3<4的条件是真的,所以没有报错。

    因此,可以用assert关键字作为程序的监测点。当需要确保程序中的某条件一定为真才能让程序正常工作的时候,就可以用assert了。

    END

    我是jammny,喜欢的点个赞加个关注吧!持续更新零基础学习python系列。

    转载:https://blog.csdn.net/qq_41832837/article/details/104052634

    相关文章

      网友评论

          本文标题:python的条件分支——零基础学python 007

          本文链接:https://www.haomeiwen.com/subject/usbjzctx.html