决策结构具有一个或多个要由程序评估或测试的条件,以及要执行的一个或多个语句(如果条件被确定为 true)和要执行的其他语句(可选)如果条件被确定为 false。
下图显示了大多数编程语言中典型决策结构的一般形式 -

Jython 不使用大括号来表示当条件为 true 或 false 时要执行的语句块(就像 Java 中的情况一样)。相反,统一缩进(左边距的空白)用于形成语句块。这种统一缩进的块使得当 'if' 语句中给出的条件为 true 时执行条件代码。
类似的块可能会出现在可选的 'else' 语句之后。Jython 还提供了 elif 语句,可以使用该语句来测试连续条件。在这里,else 子句将最后出现,并且仅在上述所有条件都失败时执行。使用 if.. 的一般语法ELIF..else 如下所示。
if expression1:
statement(s)
elif expression2:
statement(s)
elif expression3:
statement(s)
else:
statement(s)
在以下示例中,如果 ..ELIF ..else 构造用于计算用户输入的不同金额值的折扣。
discount = 0
amount = input("enter Amount")
if amount>1000:
discount = amount*0.10
elif amount>500:
discount = amount*0.05
else:
discount = 0
print 'Discount = ',discount
print 'Net amount = ',amount-discount
上述代码的输出将如下所示。
enter Amount1500
Discount = 150.0
Net amount = 1350.0
enter Amount600
Discount = 30.0
Net amount = 570.0
enter Amount200
Discount = 0
Net amount = 200
Discount = 150.0
Net amount = 1350.0
enter Amount600
Discount = 30.0
Net amount = 570.0
enter Amount200
Discount = 0
Net amount = 200