Python3 条件控制

Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。

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

python for条件 自减_python

代码执行过程:

python for条件 自减_开发语言_02

 1、if 语句

Python中if语句的一般形式如下所示:



if condition_1:
    statement_block_1
elif condition_2:
    statement_block_2
else:
    statement_block_3



  • 如果 "condition_1" 为 True 将执行 "statement_block_1" 块语句
  • 如果 "condition_1" 为False,将判断 "condition_2"
  • 如果"condition_2" 为 True 将执行 "statement_block_2" 块语句
  • 如果 "condition_2" 为False,将执行"statement_block_3"块语句

Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else

注意:

  • 1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
  • 2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
  • 3、在Python中没有switch – case语句。

2、简单实例

以下是一个简单的 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中常用的操作运算符:

python for条件 自减_python for条件 自减_03

实例:



# -*- 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



3、猜字谜游戏



# -*- 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



4、if 嵌套

 在嵌套 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