Python 3 if 条件语句

程序在一般情况下是按顺序执行的,就像流水账一样,一条一条顺序运行

当然,有时候我们需要根据条件来有选择的执行某些语句,或者重复执行某些语句

Python 提供了各种控制结构,允许更复杂的执行路径

条件语句是通过一条或多条语句的执行结果 ( True 或者 False ) 有选择性的执行的代码块

我们可以通过下图来简单了解条件语句的执行过程

Python 语言中

任何非 0 和非空 ( null ) 值为 true,0 或者 null 为 false

Python if 条件语句用于控制程序的执行,语法如下

语法

if condition :
    statement(s)
else
    else_statement(s)

如果 condition 为 True ,则执行后面的语句,语句可以多行,用缩进表示同一范围

else 为可选语句,当 condition 为 False 时 else_statement(s)

范例

Python if 语句的简单使用

#!/usr/bin/python

flag = False
name = 'basic'
if name == 'python':            # 判断变量否为 'python'
    flag = True                 # 条件成立时设置标志为真
    print ('welcome www.twle.cn') # 并输出欢迎信息
else:
    print (name)                  # 条件不成立时输出变量名称

运行以上 Python 代码,输出结果为

basic

判断语句

if 语句的判断条件 ( condition ) 可以用 >(大于)、=(大于等于)、<=(小于等于)来表示其关系

当判断条件为多个值时,可以使用以下形式

if condition_1 :
    statement_1

elif condition_2:
    statement_2

elif condition_3:
    statement_3

else:
    else_statement

下表列出了 if 中常用的操作运算符

操作符 描述
< 小于
<= 小于或等于
> 大于
>= 大于或等于
== 等于,比较对象是否相等
!= 不等于

范例

下面的代码演示了 if...elif...else 的简单使用

#!/usr/bin/python

num = 5     
if num == 3:            # 判断num的值
    print ('boss')        
elif num == 2:
    print ('user')
elif num == 1:
    print ('worker')
elif num < 0:           # 值小于零时输出
    print ('error')
else:
    print ('roadman')     # 条件均不成立时输出

运行以上 Python 代码,输出结果如下

roadman

代替 switch 语句

Python 不支持 switch 语句

所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时

  1. 使用 or ( 或 ) 表示两个条件有一个成立时判断条件成功

  2. 使用 and ( 与 ) 表示只有两个条件同时成立的情况下,判断条件才成功

#!/usr/bin/python

num = 9
if num >= 0 and num <= 10:    # 判断值是否在0~10之间
    print ('hello')             # 输出结果: hello

num = 10
if num < 0 or num > 10:       # 判断值是否在小于0或大于10
    print ('hello')
else:
    print ('undefine')          # 输出结果: undefine

num = 8
# 判断值是否在0~5或者10~15之间
if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):    
    print ('hello')
else:
    print ('undefine')          # 输出结果: undefine

当 if 有多个条件时,可使用括号来区分判断的先后顺序

括号中的判断优先执行,此外 and 和 or 的优先级低于 > ( 大于 )

简写的 if 语句

如果 if 语句中 statements 只有一条,可以和 if 语句放在同一行

#!/usr/bin/python 

var = 100 

if ( var  == 100 ) : print ("变量 var 的值为100")

print ("end.")

运行以上 Python 代码,输出结果如下

变量 var 的值为 27
end.

if 嵌套

在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中

if 表达式1:
    语句
    if 表达式2:
        语句
    elif 表达式3:
        语句
    else:
        语句
elif 表达式4:
    语句
else:
    语句

范例

num=int(input("输入一个数字:"))
if num%2==0:
    if num%3==0:
        print ("你输入的数字可以整除 2 和 3")
    else:
        print ("你输入的数字可以整除 2,但不能整除 3")
else:
    if num%3==0:
        print ("你输入的数字可以整除 3,但不能整除 2")
    else:
        print  ("你输入的数字不能整除 2 和 3")

运行以上 Python 代码,输出结果如下

$ python main.py 
输入一个数字:12
你输入的数字可以整除 23

Python3 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.