9.条件语句

9.1 基本语法

    在编程语言中,会经常碰到在不同条件下完成不同的操作功能,在Python中仅提供了if-elfif...else等条件语句,并未提供其他语言中的switch语句(如果深刻字典,也可以用字典实现switch功能),其基本语法格式如下所示:

1.基本格式

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
if condition:
   doSomething
elif condition:
   doSomething
   
   ...
   
else:
   doSomething

2.嵌套格式


if condition:
   if condition:
      doSomething
   else:
      doSomething
elif condition:
   if condition:
      doSomething
   elif condition:
      doSomething
   else:
      doSomething
      
      ...
      
else
   if condition:
      doSomething
   else:
      doSomething

    基本变异形式示意图如下所示:

Python基础-09条件语句 Python 第1张

Python基础-09条件语句 Python 第2张
Python基础-09条件语句 Python 第3张

9.2 三元运算符

    相信有其他编程语言基础的童鞋都知道三元运算符,Python同样也提供了,基本格式如下所示:

[result = ] TrueResult if condition else FalseResult

    心细的童鞋,应该发现前面的示例中已经用到这种格式的三元运算符了,可以在实践中多使用体会。

9.3 字典实现switch条件判断

    可能有其他编程语言基础的童鞋比较怀念switch语句,而Python官方却又没有提供这个条件判断方法,我们一直来看看,如何结合字典来实现switch功能吧,示例代码如下所示:

def add(x:int,y:int)->int:
    print( x+y)

def sub(x:int,y:int)->int:
    print( x-y)

def mul(x:int,y:int)->int:
    print( x*y)

def div(x:int,y:int)->int:
    if y:
       print( x/y)

def simpleCaculator(operator:str,x:int,y:int)->None:
    dic={
        "+":add,
        "-":sub,
        "*":mul,
        "/":div,
    }
    return dic.get(operator)(x,y)

if __name__ == '__main__':
    simpleCaculator("+", 1, 2)
    simpleCaculator("-", 1, 2)
    simpleCaculator("*", 1, 2)
    simpleCaculator("/", 1, 2)

    以上其实运用函数在Python是一等公民的特性(后面会讲),运行结果如下所示:

3
-1
2
0.5

9.4 示例代码

    示例代码如下所示:

tmpStr=int(input("请输入一个数字:"))

if tmpStr<0:
    print("您输入的数字小于0")
elif tmpStr<100:
    if 0<=tmpStr<=50:
         print("您输入的数字介于[0,50]")
    elif 50<tmpStr<=100:
        print("您输入的数字介于(50,100]")
else:
    if 100<tmpStr<=999:
        print("您输入的数字介于(100,999]")
    else:
        print("您输入的数字太大了,暂时不输出信息")

本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest,或扫描下面的二维码添加关注:
Python基础-09条件语句 Python 第4张

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄