📌  相关文章
📜  Python中的决策(if,if..else,嵌套if,if-elif)

📅  最后修改于: 2020-06-22 05:24:41             🧑  作者: Mango

在现实生活中,有时需要做出一些决定,然后根据这些决定来决定下一步该做什么。在编程中也会出现类似的情况,我们需要做出一些决策,然后基于这些决策,我们将执行下一个代码块。
编程语言中的决策陈述决定了程序执行流程的方向。Python中可用的决策语句为:

  • if声明
  • if..else语句
  • 嵌套if语句
  • if-elif

if 声明

if语句是最简单的决策语句。它用于决定是否执行某个语句或语句块,即,如果某个条件为真,则执行语句块,否则不执行。
语法

if condition:
   # if为True时
   # 执行的部分

在此,if语句接受布尔值–如果该值为true,则它将执行其下的语句块,否则不执行。我们也可以在方括号'(”)’中使用条件
众所周知,Python使用缩进来识别块。因此,将识别if语句下的块,如以下示例所示:

if condition:
   statement1
statement2
# 如果if为True, if块
# 将会执行块内部缩进的代码

流程图:

例子:

# Python代码,展示if条件语句
i = 10
if (i > 15):
   print ("10小于15")
print ("没有在if内")

输出:

没有在if内

由于if语句中存在的条件为false。因此,不执行if语句下面的块。

if- else

仅if语句告诉我们,如果条件为true,它将执行语句块,如果条件为false,则不会。但是如果条件为假,我们想做其他事情怎么办。这需要else语句,当条件为false时,可以将else语句与if语句一起使用以执行代码块。
语法

if (condition):
    # 如果if为True执行
else:
    # 如果if为False执行

流程图:

例子:

# Python 程序,展示if-else条件语句
#!/usr/bin/Python
i = 20;
if (i < 15):
    print ("i小于15")
    print ("在if内")
else:
    print ("i大于15")
    print ("在else内")
print ("在if和else之外")

输出:

i大于15
在else内
在if和else之外

在调用不在块中(无空格)的语句后,如果if语句中的条件为false,则执行else语句之后的代码块。

嵌套if

是的,Python允许我们在if语句中嵌套if语句。即,我们可以在另一个if语句中放置一个if语句。
语法

if (condition1):
   # 当condition1为True执行
   if (condition2):
      # 当condition2为True执行

流程图:

例子:

# Python 程序,展示if嵌套
#!/usr/bin/Python
i = 10
if (i == 10):
    #  第一个if条件
    if (i < 15):
        print ("i小于15")
    # 嵌套 - if语句
    # 嵌套if为True执行
    if (i < 12):
        print ("i也小于12")
    else:
        print ("i大于15")

输出:

i小于15
i也小于12

if-elif-else

在这里,编程人员可以在多个选项中进行选择。if语句从上至下执行。一旦控制if的条件之一为true,则将执行与if关联的语句,并跳过其余的部分。如果没有一个条件为真,则将执行最终的else语句。
语法

if (condition):
    statement
elif (condition):
    statement
.
.
else:
    statement

流程图:

例子:

# Python 代码,展示if-elif-else
#!/usr/bin/Python
i = 20
if (i == 10):
    print ("i等于10")
elif (i == 15):
    print ("i等于15")
elif (i == 20):
    print ("i等于20")
else:
    print ("i不存在")

输出:

i等于20