当前课程知识点:计算思维与人工智能基础 >  第三部分:python基础 >  第五章:程序控制结构 >  5.2条件结构

返回《计算思维与人工智能基础》慕课在线视频课程列表

5.2条件结构在线视频

下一节:5.3循环结构

返回《计算思维与人工智能基础》慕课在线视频列表

5.2条件结构课程教案、知识点、字幕

条件结构

计算机比其他计算工具的优势之处就在于

其具有逻辑判断能力

在分支选择方面

Python只支持if语句

if也是复合语句

在if中可以包括其他的语句

利用if语句可以实现分支选择

具体形式分为单分支选择

多分支选择和双分支选择三种结构

我们来看单分支选择

他的语句形式呢其实是

判断

条件

执行语句体

或者是判断条件执行一组语句体

它的格式是这样的

那么从他的流程图我们可以看到

这是一个条件

满足条件他可以执行语句块

否则的话就跳过执行的语句块

执行下面一条语句

来我们看右边这段代码

分别输入a,b,c的值

那么把输入的a的值赋给most这个变量

那么判断我们的b的值是否大于most

如果大于他的话

满足这个条件呢

我们就把b复制给most

否则我们就执行下一句

判断c是否大于most

如果满足条件

把c赋值给most

那么通过这样的选择的执行之后呢

输出most就是最大值

再来看一下分支选择

那么双分支选择是通过一个条件判断

满足条件执行一个语句块

不满足条件执行另外一个语句块

这样的一个过程

它的语句格式是if条件

那么后面跟冒号

满足条件执行语句体1

不满足条件的时候

他就执行什么语句体2

我们来看看一个例题

判断是否是闰年

那么输入一个年份呢

我们判断他是不是闰年的条件是什么呢

是能被4整除

但不能被100整除

或者是能被400整除

这样的呢就是闰年

那我们怎么样去通过分支语句去实现这个需求呢

首先我们需要判断一个重点是可以把一个年份输进来

好的

我们输入一个年份的值

要把它强制转换成整形

年份都是整形的

第二步呢

我们需要做什么呢

我们要去对这个条件

条件来进行给他赋值

条件是这个条件我们称之为flag

那么赋值是一个什么样的条件呢

是按照上面我们可以看能够被4整除

and不能被100整除

或者是能被400整除

那么这个呢得到的是true

或者false

这个year来通过这个逻辑表达式来得到一个结果

flag就是true或者false

那么下面呢我们就可以对这个条件进行判断

判断他是true的时候呢

我们就输出是闰年

false的时候

我们就说不是闰年

按照我们前面讲的结构

if flag满足条件

我们输出是闰年

else呢就输出不是闰年

下面我们在jupyter下看一下我们刚才这段代码的执行情况

我们运行后可以输入2000年

我们看2000年是能被400整除的

他应该是闰年

结果是闰年

我们再运行一下

我们再输入一个2004年

那他是能被4整除但是不能被100整除的

那应该也是闰年

我们看到的结果是闰年

我们再运行下

输入一个能被4整除但不能被

也能被100整除的

那就不是闰年

我们来看能被4整除

也能被100整除的

2100年

那么输入

他不是闰年

那么这个简单的测试下

我们这个判断闰年的这段代码

那么上面是一个简单的分支

输入一个值判断我们输入这个值是不是99

这也是一个双分支的结构

运行一下我们可以看一看

如果是输入99

那他结果就是猜对了

如果输入其他的数

我们随便输一个3

看他的结果就是猜的不对

另外呢

在选择中if语句呢

他还可以跟print连用

连用这样的或者跟赋值语句一起去用的

我们来看下面这个

也是输入一个n的值

那么这段代码呢

是通过if语句来判断n是不是大于5

大于5就输出

否则的话就输出小于5

我们也看他的执行情况

我们输入一个值大于5的45

我们可以看到他应该是输出大于5

结果是大于5

那么再运行一下

我们输入一个3

那他应该输出3是不满足大于5

应该输出什么小于5的

那么执行一下

看他是这样子的结果

下面我们看一下多分支选择结构的应用

我们看这个流程图

那么碰到条件的时候

if后面如果有一个条件判断他是满足条件执行语句块1

否则的话他可以再进行判断

叫elif来去判断这个条件

那么条件满足呢

执行语句块2

elif不满足的话

他就会再去判断elif加的条件

那么可以有多个elif

那么最后呢不满足的时候可以跟else来执行它对应的区块

那么这样的结构就叫多分支结构

我们来看这样的一个问题

输入数学成绩零到一百分

输出对应的等级是小于六十分是不及格

六十到七十分及格

七十到八十分之间中等

八十到九十之间是良好

九十分以上是优秀

那我们来看

如何用多分支去解决这样的一个问题呢

那我们在这个对应的我们这个流程图可以看到

if这个地方首先判断条件是什么呢

那当然我们要从九十开始判断

条件大于等于九十呢

那我们就称之为优秀

elif呢再判断的时候就是相当于在九十分以下

那么也就是在八十分以上

那就大于等于八十满足这个条件呢

那我们就是良好

否则的话

就在判断在八十分以下

是不是在七十分以上大于等于七十分

那我们就是中等

同样再可以判断大于等于六十分为及格

否则else呢后面就可以跟不及格

是这样的一个结构来解决我们上面这个问题的

那我们来看写代码怎么样写

第一步需要输入我们的数学成绩

那么通过input来输入

需要把它转换成数值类型

那eval是我们前面讲过的函数

那么输入数学成绩给math

下面就是对math的判断

判断第一个就要判断if math是不是大于等于九十分

那么大于等于九十分的

我们就让他输出优秀

否则那就会跟elif

elif后面条件是什么呀

大于等于八十分呢

我们输出良好

依此类推呢

后面是elif大于等于七十分是中等

大于等于六十分是及格

那么剩下的否则就是不及格

所以我们这个地方要跟else

else就输出不及格

好了

我们下面可以在jupyter下看一下这段代码的执行情况

我们看刚才写的这段代码

在jupyter下的执行结果是什么样子的

首先我们运行一下他

输入一个88

那他的正确输出应该是良好

运行一看

良好

我们再执行一下

我们输入个60

他应该是及格

我们看他的结果

及格

我们再输一个55分

它的运行情况是什么样子呢

不及格啊

那就是多分支可以输入不同的成绩呢

给出不同的评语

下面我们来看看这个在if elif else

这样的结构下是多分支结构

也可以是if else的复合结构的应用

我们来看这段代码

也是输入一个x

那么首先我们判断x大于等于0否

那么如果满足条件就是大于等于0的

下面这段代码的我们再判断他是不是大于0

大于0就是1

否则的话他就应该是什么呀

0

那这是if else是配对的

否则的话呢

这个else和这个if是配对

否则的话

他就是1

是这样的一个结果

就是-1

那么就1,0,-1的一个判断

我们也看一下它的执行的结果

我们给他输入一个

7

那他应该是y的结果应该是1

我们看结果是1

我们同样再运行一下

我们给他输入一个0

他的结果应该也是正常输出

是0

我们再让他执行

给他输入一个-9

他的正确输出应该是-1

那这个就是if else可以符合的使用

它的效果

其实跟我们的if else呢

是有同样的效果

关于多分支的选择结构呢

我们就给大家介绍到这儿

计算思维与人工智能基础课程列表:

第一部分:计算思维

-1.计算思维的提出

-2.计算思维的要素与应用

-3.培养计算思维

-4.智能时代的教师与教学

-章测试

第二部分:人工智能

-1.人工智能的发展

-2.人工智能的实现与机器学习

-3.人工智能产业

-章测试

第三部分:python基础

-第一章:python简介

--1.1python的介绍

--1.2.anaconda的安装

--章测试

-第二章:编码规范

--2.1 python编码规范

--2.2常量和变量

--章测试

-第三章:数据类型

--3.1数据类型概述

--3. 2.数据转换

--3.3数据类型区别

--章测试

-第四章:基本运算

--4.1.基本运算符

--4.2比较运算符

--4.3逻辑运算符

--4.4位运算符

--4.5成员运算符与身份运算符

--4.6运算符的优先级

--章测试

-第五章:程序控制结构

--5.1顺序结构

--5.2条件结构

--5.3循环结构

--5.4跳转结构

--5.5异常处理

--章测试

-第六章:函数、模块与面向对象

--6.1函数的定义与调用

--6.2面向对象

--6.3魔法函数的应用

--6.4模块与包

--章测试

-第七章:文件操作

--7.1文件的打开与读取

--7.2文件的写入

--7.3CSV模块的应用

--章测试

-第八章:python生态库

--8.1第三方库的安装

--8.2标准库-Os库与Sys库

--8.3.标准库-Time库

--8.4标准库-Random库

--8.5标准库-Turtle库

--8.6第三方库-词云库

--8.7第三方库-pyinstaller库

--8.8第三方库-numpy库(上)

--8.9第三方库-numpy库(下)

--8.10第三方库-pandas库

--8.11第三方库-matplotlib库

--章测试

-第九章:TensorFlow基础

--9.1TensorFlow简介

--9.2TensorFlow 2.0的改进

--9.3TensorFlow的数据应用

--9.4 TensorFlow的设备应用

--9.5.TensorFlow中常用操作

--章测试

-第十章:实例分析与实践

--10.1认识回归问题

--10.2房价的预测

--10.3手写数字识别

--10.4卷积神经网络的介绍

--10.5全连接网络的搭建

--10.6卷积神经网络的实现服饰图片的分类

--10.7LeNet的介绍

--章测试

-第十一章:人工智能在自然语言中的应用

--11.1自然语言处理

--11.2命名实体识别技术

--11.3词向量表示

--11.4自然语言处理的挑战及应用

--章测试

5.2条件结构笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。