一  流程控制

流程控制的定义

流程:代码执行的过程

流程控制:对代码执行过程的管控

流程控制三大结构:

顺序结构:从上到下,代码依次执行

分支结构: 一共4个

循环结构:while for

分支结构:

单项分支

双项分支

多项分支

巢状分支

二 if分支

2.1 单项分支

语法代码块

if条件表达式:

code1

code2

...

...

如果条件表达式成立,则执行if代码块中的内容

2.2 双向分支

语法代码块

if条件表达式:

code1

code2

...else:

code1

code2

...

如果条件表达式成立 则执行if当中代码块的内容

如果条件表达式不成立 则执行else当中代码块的内容

if下面的代码块叫做 真区间

else 下面你的代码块叫做 假区间

根据下面要求写一个python代码

提示用户输入用户名和密码,如果用户名是admin , 并且密码是123456 , 提示用户恭喜你,登陆成功,否则提示用户名或密码错误

username = input("请输入您的用户名:")

password= input("请输入您的密码:")if username == "admin" and password == "123456":print("恭喜你,登录成功")else:print('抱歉,您的用户名或密码错误')

正确执行


错误执行


input 等待用户输入内容   * input  接受到的所有数据都是字符串类型

2.3 多项分支 (多选一)

语法代码块

if条件表达式1:

code1

...elif条件表达式2:

code1

...elif条件表达式3:

code1

...else:

code1

...

elif 可以是1个,可以是多个,else 只能是1个,或者没有

执行过程

默认从上到下

如果条件表达式1成立则执行代码块,否则向下执行

判断elif中的表达式2是否成立,如果ok执行代码块,否则继续向下执行表达式3,

依次类推,如果没有一个条件表达式成立,

最后执行else区间里面的内容

如果有一个条件满足,就执行该区间的内容,剩下的所有条件都不执行了

写一个简单的判断成绩的代码

score = input("请输入您的成绩:")

score=int(score)if score < 0 or score > 100:print ("请您输入正确的分数1~100")elif 60 <= score < 70:print('刚刚及格,需要下功夫')elif 70 <= score < 80:print("成绩良好,加油")elif 80 <= score < 90:print("很优秀,加油")elif 90 <= score <= 100:print("非常棒,加油")else:print("没有及格,叫家长")

执行测试

[root@node10 python]#python3 test.py

请输入您的成绩:35没有及格,叫家长

[root@node10 python]#python3 test.py

请输入您的成绩:67刚刚及格,需要下功夫

[root@node10 python]#python3 test.py

请输入您的成绩:76成绩良好,加油

[root@node10 python]#python3 test.py

请输入您的成绩:87很优秀,加油

[root@node10 python]#python3 test.py

请输入您的成绩:99非常棒,加油

[root@node10 python]#python3 test.py

请输入您的成绩:999请您输入正确的分数1~100

2.4 巢状分支

单项分支,双项分支 多项分支的嵌套使用

修改上面的代码位巢状分枝

score = input("请输入您的成绩:")

score=int(score)if score < 0 or score > 100:print ("请您输入正确的分数1~100")else:if score >= 60:if score >= 70:if score >= 80:if score >= 90:print("非常棒,加油")else:print("很优秀,加油")else:print("成绩良好,加油")else:print("刚刚及格,需要下功夫")else:print("没有及格,叫家长")

执行测试

[root@node10 python]#python3 test.py

请输入您的成绩:34没有及格,叫家长

[root@node10 python]#python3 test.py

请输入您的成绩:67刚刚及格,需要下功夫

[root@node10 python]#python3 test.py

请输入您的成绩:78成绩良好,加油

[root@node10 python]#python3 test.py

请输入您的成绩:89很优秀,加油

[root@node10 python]#python3 test.py

请输入您的成绩:99非常棒,加油

[root@node10 python]#python3 test.py

请输入您的成绩:121请您输入正确的分数1~100

通用写法

score = input("请输入您的成绩:")

score=int(score)if score < 0 or score > 100:print ("请您输入正确的分数1~100")elif 60 <= score and score < 70:print('刚刚及格,需要下功夫')elif 70 <= score and score < 80:print("成绩良好,加油")elif 80 <= score and score < 90:print("很优秀,加油")elif 90 <= score and score <= 100:print("非常棒,加油")else:print("没有及格,叫家长")

执行测试

请输入您的成绩:56没有及格,叫家长

[root@node10 python]#python3 test.py

请输入您的成绩:67刚刚及格,需要下功夫

[root@node10 python]#python3 test.py

请输入您的成绩:78成绩良好,加油

[root@node10 python]#python3 test.py

请输入您的成绩:89很优秀,加油

[root@node10 python]#python3 test.py

请输入您的成绩:9没有及格,叫家长

[root@node10 python]#python3 test.py

请输入您的成绩:121请您输入正确的分数1~100