Python If … Else

Python 条件和 If 语句

Python 支持来自数学的常用逻辑条件:

  • 等于:a == b
  • 不等于:a != b
  • 小于:a < b
  • 小于等于:a <= b
  • 大于:a > b
  • 大于等于:a >= b

这些条件能够以多种方式使用,最常见的是 "if" 语句循环。

if 语句使用 if 关键词来写。

If 语句:

  1. a = 66
  2. b = 200
  3. if b > a:
  4. print("b is greater than a")

在这个例子中,我们使用了两个变量,ab,作为 if 语句的一部分,它们用于测试 b 是否大于 a。因为 a 是 66,而 b 是 200,我们知道 200 大于 66,所以我们将 "b大于a" 打印到屏幕。


缩进

Python 依赖缩进,使用空格来定义代码中的范围。其他编程语言通常使用花括号来实现此目的。

没有缩进的 If 语句(会引发错误):

  1. a = 66
  2. b = 200
  3. if b > a:
  4. print("b is greater than a") # 会报错

Elif

elif 关键字是 python 对“如果之前的条件不正确,那么试试这个条件”的表达方式。

  1. a = 66
  2. b = 66
  3. if b > a:
  4. print("b is greater than a")
  5. elif a == b:
  6. print("a and b are equal")

在这个例子中,a 等于 b,所以第一个条件不成立,但 elif 条件为 true,所以我们打印屏幕 "a 和 b 相等" 。


Else

else 关键字捕获未被之前的条件捕获的任何内容。

  1. a = 200
  2. b = 66
  3. if b > a:
  4. print("b is greater than a")
  5. elif a == b:
  6. print("a and b are equal")
  7. else:
  8. print("a is greater than b")

在这个例子中,a 大于 b,所以第一个条件不成立,elif 条件也不成立,所以我们转到 else 条件并打印到屏幕 "a 大于 b" 。

您也可以使用没有 elifelse

  1. a = 200
  2. b = 66
  3. if b > a:
  4. print("b is greater than a")
  5. else:
  6. print("b is not greater than a")

简写 If

如果只有一条语句要执行,则可以将其与 if 语句放在同一行。

单行 if 语句:

  1. a = 200
  2. b = 66
  3. if a > b: print("a is greater than b")

简写 If … Else

如果只有两条语句要执行,一条用于 if,另一条用于 else,则可以将它们全部放在同一行:

单行 if else 语句:

  1. a = 200
  2. b = 66
  3. print("A") if a > b else print("B")

您还可以在同一行上使用多个 else 语句:

单行 if else 语句,有三个条件:

  1. a = 200
  2. b = 66
  3. print("A") if a > b else print("=") if a == b else print("B")

And

and 关键字是一个逻辑运算符,用于组合条件语句:

测试 a 是否大于 b,且 c 是否大于 a:

  1. a = 200
  2. b = 66
  3. c = 500
  4. if a > b and c > a:
  5. print("Both conditions are True")

Or

or 关键字也是逻辑运算符,用于组合条件语句:

测试 a 是否大于 b,或者 a 是否大于 c:

  1. a = 200
  2. b = 66
  3. c = 500
  4. if a > b or a > c:
  5. print("At least one of the conditions is True")

嵌套 If

您可以在 if 语句中包含 if 语句,这称为嵌套 if 语句。

  1. x = 52
  2. if x > 10:
  3. print("Above ten,")
  4. if x > 20:
  5. print("and also above 20!")
  6. else:
  7. print("but not above 20.")

pass 语句

if 语句不能为空,但是如果您处于某种原因写了无内容的 if 语句,请使用 pass 语句来避免错误。

  1. a = 33
  2. b = 200
  3. if b > a:
  4. pass
  5. # having an empty if statement like this, would raise an error without the pass statement