当前位置 博文首页 > 让你分分钟学会python条件语句

    让你分分钟学会python条件语句

    作者:振华OPPO 时间:2021-09-16 18:27

    Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

    我们通过下图来简单了解下条件语句的执行过程:

    Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

    Python 编程中 if 语句用于控制程序的执行,基本形式为:

    if 判断条件:
        执行语句。。。
    else:
        执行语句。。。

    其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。

    else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句,如果条件不成立时不需要做任何操作,就可以不写。

    我们来看一个具体的例子:

    flag=False          # 定义变量flag为假
    name="csdn"			# 定义变量name为“csdn”的字符串
    if(name=='python'):  # 判断变量是否为 python
        flag=True        # 条件成立时设置标志为真
        print("this is python conditional statement")  # 并输出提示信息
    else:
        print(name)     # 条件不成立时输出变量名称
    

    输出结果

    csdn

    这里可以看到python中if-else语句与C/C++和java最大的区别就是它不需要花括号将执行语句括起来,这也是python本身的一个特点。

    if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

    当判断条件为多个值时,可以使用以下形式:

    if 判断条件1:
        执行语句1。。。
    elif 判断条件2:
        执行语句2。。。
    elif 判断条件3:
        执行语句3。。。
    else:
        执行语句4。。。

    看一个经典成绩实例:

    grade=99  #定义grade变量并赋值
    if(grade>=90): #第一个分支,判断grade是否>=90
        print("优秀")# 是就输出“优秀”,不是则继续看下面分支
    elif(grade>=80):#第二个分支,判断grade是否>=80
        print("良好")# 是就输出“良好”,不是则继续看下面分支
    elif(grade>=70):#第三个分支,判断grade是否>=70
        print("中等")# 是就输出“中等”,不是则继续看下面分支
    elif(grade>=60):#第四个分支,判断grade是否>=60
        print("及格")# 是就输出“及格”,不是则继续看下面分支
    else:         #当所有分支均不满足,进入else分支
        print("不及格")# 只要进入else分支就执行该语句
    

    输出结果为

    不及格

    由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件同时判断时,可以使用 or (或)表示两个条件有一个成立时判断条件成功;使用 and (与)表示只有两个条件同时成立的情况下,判断条件才成功。

    我们来看下面三个实例,都是if语句中多个条件

    #实例1
    num = 9
    if num >= 0 and num <= 10:  # 判断值是否在0~10之间
        print("hello")
        
    # 输出结果: hello
    
    #实例2
    num = 10
    if num < 0 or num > 10:  # 判断值是否在小于0或大于10
        print("hello")
    else:
        print('undefine')
        
    # 输出结果: undefine
    
    #实例3
    num = 8
    # 判断值是否在0~5或者10~15之间
    if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):
        print("hello")
    else:
        print('undefine')
    # 输出结果: undefine
    

    当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或优先判断。

    当然,你也可以在同一行的位置上使用if条件判断语句,如下实例:

    time=60
    if(time<=60):print("珍惜时间")
    print("时间已经流逝")
    

    输出结果为

    珍惜时间
    时间已经流逝

    在程序中,if语句可以嵌套,同等缩进为同一条件结构,下面我们通过几行python2代码,学习一下条件嵌套

    使用python(x,y),代码如下:

    k=raw_input("input the index of shape:")
    
    if k=='1':
        print "circle"
    elif k=='2':
        print "oval"
    elif k=='3':
        print "rectangle"
        s1=int(raw_input('the first side:'))
        s2=int(raw_input('the second side:'))
        if s1==s2:
            print "the square's area is:%d." % (s1*s2)
        else:
            print "the rectangle's area is:%d." % (s1*s2)
    elif k=='4':
        print "triangle"
    else:
        print "you input the invalid number."
    
    

    运行该代码多次,执行结果如下图:

    总结

    jsjbwy
    下一篇:没有了