Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。
可以通过下图来简单了解条件语句的执行过程:
代码执行过程:
Python中if语句的一般形式如下所示:
if condition_1: statement_block_1 elif condition_2: statement_block_2 else: statement_block_3
Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。
注意:
以下是一个简单的 if 实例:
# -*- coding:utf-8 -*- var1 = 100 if var1: print("如果var1的if 条件是True,打印本条信息") print(var1) var2 = 0 if var2: print("如果var2的if条件是True,打印本条信息") print(var2) print("hello,yin! good bye~")
执行结果:
C:\Users\yzp\PycharmProjects\base_practice\Scripts\python.exe D:/00test/base_practice/01写一个斐波纳契数列.py 如果var1的if 条件是True,打印本条信息 100 hello,yin! good bye~ Process finished with exit code 0
从结果可以看到由于变量 var2 为 0,所以对应的 if 内的语句没有执行。
以下实例演示了狗的年龄计算判断:
# -*- coding:utf-8 -*- age = int(input("请输入狗狗的年龄:")) print("hello.yin! 开始计算狗狗年龄~") if age <= 0: print("逗我玩呢,狗狗还没出生哦~") elif age == 1: print("相当于人类年龄14岁!") elif age == 2: print("相当于人类年龄22岁~") elif age > 2: human = 22 + (age - 2)*5 print("相当于人类年龄%d岁" % human) # 退出提示 print("按enter键退出计算~")
执行结果:
C:\Users\yzp\PycharmProjects\base_practice\Scripts\python.exe D:/00test/base_practice/01写一个斐波纳契数列.py 请输入狗狗的年龄:-1 hello.yin! 开始计算狗狗年龄~ 逗我玩呢,狗狗还没出生哦~ 按enter键退出计算~ Process finished with exit code 0 C:\Users\yzp\PycharmProjects\base_practice\Scripts\python.exe D:/00test/base_practice/01写一个斐波纳契数列.py 请输入狗狗的年龄:5 hello.yin! 开始计算狗狗年龄~ 相当于人类年龄37岁 按enter键退出计算~ Process finished with exit code 0
以下为if中常用的操作运算符:
实例:
# -*- coding:utf-8 -*- # 演示 == 符号的作用 print(5 == 6) x = 7 y = 8 print(x == y)
执行结果:
C:\Users\yzp\PycharmProjects\base_practice\Scripts\python.exe D:/00test/base_practice/01写一个斐波纳契数列.py False False Process finished with exit code 0
# -*- coding:utf-8 -*- number = 7 guess = -1 print("开始玩猜字谜游戏~") while number != guess: guess = int(input("请输入你猜的数字:")) if guess == number: print("恭喜你,猜中了~") elif guess < number: print("猜小了~") elif guess > number: print("猜大了~")
执行结果:
C:\Users\yzp\PycharmProjects\base_practice\Scripts\python.exe D:/00test/base_practice/01写一个斐波纳契数列.py 开始玩猜字谜游戏~ 请输入你猜的数字:1 猜小了~ 请输入你猜的数字:10 猜大了~ 请输入你猜的数字:7 恭喜你,猜中了~ Process finished with exit code 0
在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中。
if 表达式1: 语句 if 表达式2: 语句 elif 表达式3: 语句 else: 语句 elif 表达式4: 语句 else: 语句
实例:
# -*- coding:utf-8 -*- number = int(input("请输入您的数字:")) if number % 2 == 0: if number % 3 ==0: print("这个数字可以被2整除,也可以被3整除!") else: print("这个数字可以被2整除,但是不可以被3整除!") else: if number % 3 == 0: print("这个数字不可以被2整除,但是可以被3整除!") else: print("这个数字既不可以被2整除,也不可以被3整除!")
执行结果:
C:\Users\yzp\PycharmProjects\base_practice\Scripts\python.exe D:/00test/base_practice/01写一个斐波纳契数列.py 请输入您的数字:6 这个数字可以被2整除,也可以被3整除! Process finished with exit code 0 C:\Users\yzp\PycharmProjects\base_practice\Scripts\python.exe D:/00test/base_practice/01写一个斐波纳契数列.py 请输入您的数字:7 这个数字既不可以被2整除,也不可以被3整除! Process finished with exit code 0 C:\Users\yzp\PycharmProjects\base_practice\Scripts\python.exe D:/00test/base_practice/01写一个斐波纳契数列.py 请输入您的数字:4 这个数字可以被2整除,但是不可以被3整除! Process finished with exit code 0