freeCodeCamp/guide/chinese/python/if-elif-else-statements/index.md

2.8 KiB
Raw Blame History

title localeTitle
If Elif Else Statements If / Elif / Else语句

If / Elif / Else语句

if / elif / else结构是控制程序流的常用方法,允许您根据某些数据的值执行特定的代码块。如果关键字if后面的条件表达式返回为True ,则代码块将执行: 请注意,在条件检查之前和之后不使用括号,如同其他语言一样。

if True: 
  print('If block will execute!') 
x = 5 
 
if x > 4: 
  print("The condition was true!") #this statement executes 

您可以选择添加else执行条件为False的代码块:

if not True: 
  print('If statement will execute!') 
else: 
  print('Else statement will execute!') 

或者你也可以看看这个例子

y = 3 
 
if y > 4: 
  print("I won't print!") #this statement does not execute 
else: 
  print("The condition wasn't true!") #this statement executes 

请注意, else关键字后面没有条件 - 它捕获条件为False所有情况

可以通过在初始if语句之后包含一个或多个elif来检查多个条件,但只执行一个条件:

z = 7 
 
if z > 8: 
  print("I won't print!") #this statement does not execute 
elif z > 5: 
  print("I will!") #this statement will execute 
elif z > 6: 
  print("I also won't print!") #this statement does not execute 
else: 
  print("Neither will I!") #this statement does not execute 

请注意,只有第一个计算为True条件才会执行。即使z > 6True if/elif/else块在第一个真实条件之后终止。这意味着只有在没有条件为True的情况下才会执行else

我们还可以创建嵌套if用于决策。在此之前请参阅前面的href ='https//guide.freecodecamp.org/python/code-blocks-and-indentation'target ='_ blank'rel ='nofollow'>缩进指南。

让我们举个例子来找一个偶数大于'10'的数字

python 
x = 34 
if x %  2 == 0:  # this is how you create a comment and now, checking for even. 
  if x > 10: 
    print("This number is even and is greater than 10") 
  else: 
    print("This number is even, but not greater 10") 
else: 
  print ("The number is not even. So point checking further.") 

这只是嵌套if的一个简单示例。请随时在线浏览更多内容。

虽然上面的示例很简单,但您可以使用布尔比较布尔运算符创建复杂条件。

内联python if-else语句

我们也可以使用if-else语句内联python函数。以下示例应检查数字是否大于或等于50如果是则返回True

python 
x = 89 
is_greater = True if x >= 50 else False 
 
print(is_greater) 

输出

> 
True 
>