📜  Python if … else语句

📅  最后修改于: 2020-09-19 13:56:59             🧑  作者: Mango

在本文中,您将学习使用不同形式的if..else语句在Python程序中创建决策。

if … else Python语句是什么?

仅当满足特定条件时,才需要执行代码时才需要决策。

if…elif…else语句在Python用于决策。

Python if语句语法

if test expression:
    statement(s)

在此,程序将评估test expression并且仅在测试表达式为True时才执行语句。

如果测试表达式为False ,则不执行该语句。

在Python, if语句的主体由缩进指示。主体以缩进开始,第一条未缩进的线标记结束。

Python将非零值解释为TrueNone0被解释为False

Python if语句流程图

示例: Python if语句

# If the number is positive, we print an appropriate message

num = 3
if num > 0:
    print(num, "is a positive number.")
print("This is always printed.")

num = -1
if num > 0:
    print(num, "is a positive number.")
print("This is also always printed.")

运行该程序时,输出为:

3 is a positive number
This is always printed
This is also always printed.

在上面的示例中, num > 0是测试表达式。

if的主体只有在其值为True时才执行。

当变量num等于3时,测试表达式为true,并且执行if体内的语句。

如果变量num等于-1,则测试表达式为false,并且if体内的语句将被跳过。

print()语句位于if块之外(未缩进)。因此,无论测试表达式如何,都将执行它。

Python if … else语句

if … else的语法

if test expression:
    Body of if
else:
    Body of else

if..else语句计算test expression和将要执行的主体if只有当测试条件为True

如果条件为False ,则执行else的主体。缩进用于分隔块。

Python if..else流程图

if … else的示例

# Program checks if the number is positive or negative
# And displays an appropriate message

num = 3

# Try these two variations as well. 
# num = -5
# num = 0

if num >= 0:
    print("Positive or Zero")
else:
    print("Negative number")

输出

Positive or Zero

在上面的示例中,当num等于3时,测试表达式为true,并且if的主体被执行,else的body被跳过。

如果num等于-5,则测试表达式为false,并且执行else的主体, if的主体被跳过。

如果num等于0,则测试表达式为true,并且if正文被执行,else的body被跳过。

Python if … elif … else语句

if … elif … else的语法

if test expression:
    Body of if
elif test expression:
    Body of elif
else: 
    Body of else

elif是if的缩写。它允许我们检查多个表达式。

如果条件为ifFalse ,它会检查下一个条件elif块等。

如果所有条件均为False ,则执行else的主体。

根据条件只执行几个if...elif...else块中的一个块。

if块只能有一个else块。但是它可以有多个elif块。

if … elif … else的流程图

if … elif … else的示例

'''In this program, 
we check if the number is positive or
negative or zero and 
display an appropriate message'''

num = 3.4

# Try these two variations as well:
# num = 0
# num = -4.5

if num > 0:
    print("Positive number")
elif num == 0:
    print("Zero")
else:
    print("Negative number")

当变量numPositive number将打印Positive number

如果num等于0,则打印Zero

如果num为负数,则打印Negative number

Python嵌套if语句

我们可以有一个if...elif...else内另一份声明中if...elif...else说法。这在计算机编程中称为嵌套。

这些语句中的任何数目都可以彼此嵌套。缩进是弄清楚嵌套级别的唯一方法。它们可能会造成混乱,因此除非有必要,否则必须避免使用它们。

如果示例嵌套Python

'''In this program, we input a number
check if the number is positive or
negative or zero and display
an appropriate message
This time we use nested if statement'''

num = float(input("Enter a number: "))
if num >= 0:
    if num == 0:
        print("Zero")
    else:
        print("Positive number")
else:
    print("Negative number")

输出1

Enter a number: 5
Positive number

输出2

Enter a number: -1
Negative number

输出3

Enter a number: 0
Zero