当前课程知识点:Python 交互式程序设计导论 > 第0周 > A 课程视频(算数操作符及表达式) > 算数操作符及表达式
返回《Python 交互式程序设计导论》慕课在线视频课程列表
今天我们主要关注的两个问题
一个是算数操作符,还有一个是表达式
好,下面开始今天的内容
其实算数操作符和表达式,同学们应该不会感到陌生
因为在之前的数学的学习过程当中,都有相应的概念与之对应
在这里呢,我列出来三个式子 分别是1+2,5*10,16/4
同学们还记得我们在初等数学当中,是怎么称呼这里的数和符号的吗?
比如说1,我们在称之为被加数,2称之为加数
中间的十字符号称之为加号
那么在Python当中,我们把这里的数称之为操作数
把这里的符号称之为操作符
操作数和操作符的关系就类似于,我在右侧列出的这两个图片的关系
那么上图是咱们中华名小吃牛肉面 下图呢是西餐当中的牛排
那么我们在吃不同食物的时候,往往采用不同的工具
这就如同操作符和操作数的关系
在Python当中,常用的有以下几类操作符
算术运算符,关系运算符,逻辑运算符,赋值运算符和位运算符
其实前四种运算符同学们应该也或多或少接触过
比如说关系运算符,我们在之前的数学学习过程中
经常用到的>、<、>=等等,这就属于关系运算符
那么在这五类运算符当中,同学们比较陌生的可能应该是位运算符
这在后续的课程当中会逐一讲解
今天我们就关注的是算术运算符
Python当中,常用的算数运算符有以下几种
分别是+、-、*、**、/、//、%
那么在这里的7种运算符呢, 同学们大多数也应该不会陌生
你们在之前的课程中应该都用过,那么在这里有3类运算符
同学们可能很少接触,分别是**、//、%
那么在后续的课程当中,我会重点介绍这三类运算符
在这张表格的最后一列我分别对这几种运算符举了相应的例子
同学们可以看一下,比如说幂运算
在这里我举的是2**3=8,它代表的含义是2的3次方
再比如说舍余除法,8//5=1,这个同学们可能比较困惑
在后面的课程,我会在实际的Pycharm的环境当中给大家做以演示
下面呢我们来关注另外一个问题——表达式
那么同学们请看这个式子1+2=3
这大概是我们在很小的时候就已经学过的式子
那数学当中我们称之为算式,那么计算机程序当中面临的情况更加复杂
会解决许多用数字的加减乘除无法解决的现实问题
那么这呢,我们就引出一个新的概念叫表达式
简单的讲,表达式是值也就是 我们所谓的常量,变量,以及操作符的一种组合
在这我列出了三个表达式,同学们请看
2014是今年的年份,那么同学们说这不是一个值吗?
对,它既是一个值,我们也可以把它称之为一个常量
第二个呢是X+100**2,它表示的含义是,X这个变量+100的平方
那么有些同学说,老师你并没有讲变量的概念
这个呢我们会在下一次的课程中给大家重点介绍
你在这里只要知道它是一个表达式就可以了
那么第三个表达式'新疆'+'农业大学'
这个显然跟我们传统意义上的算式是不一样的
在这里这个表达式表示的是新疆和农业大学这两个字符串的连接
最终返回的结果应该是'新疆农业大学'
最后,我们来关注算数运算符的优先级问题
优先级问题,这个提到优先级呀
同学们在之前的数学的课程学习过程当中,应该已经接触过
比如说我记得,很小的时候我们学加减乘除四则混合运算的时候
老师就经常会提到要先乘除后加减 先算括号里面的后算括号外面的
这样一个规则,这就是所谓的优先级
那么在我们Python程序设计当中
我们往往会构造一个非常复杂的一个算数表达式
那么在这呢,我们如何确定它的优先级呢?
有一个简单的叫pemdas规则,
所谓的p表示的是(),e表示的是幂运算 m和d分别表示的乘除,a和s分别代表的是加减
这个顺序就是优先级,优先级,那么根据我们的编程经验呀
和同学们在实际编程过程中容易犯的一些错误
我们建议使用圆括号,分组运算符和操作数
明确指出运算的先后顺序,也就是说把最优先的运算
你用括号明确的指出,这样呢可能会使我们的程序更加易读
好,下面呢 我们将在实际的Pycharm环境当中来演示算术运算符及其用法
我们打开Pycharm,在实际的Pycharm的开发环境当中
给大家来演示介绍常用算数运算符的使用方法
在介绍算术运算符的使用方法之前 首先给大家介绍一个基本的输出语句叫print
print的英文原意呢是打印输出的意思
那么在Python当中,我们用print来输出计算的结果
举一个例子,我们以加法为例,假设我要计算1+2=?
并且显示出来,那么通常我们可以这样去写print(1+2)
好,运行一下结果,答案是3
那么有了这个例子,我们做后续的运算就非常容易了
我们计算5-4,好,运行一下,大家看到的结果是3和1
因为在这里有两条输出语句 每次运行这两条输出语句都会执行
所以返回的是3,表示1+2,那么1是5-4的结果
那为了明确起见,我们把刚才运行过的这句话注释掉
所谓注释呢,是指在程序运行过程当中
不执行该语句会跳过该语句,那么运行一下
我们看到结果应该是1,好,这是减法
那么乘法,我们再来举个例子,我们来计算3*4
好,运行,答案是12,这个也没有问题
需要强调的是这里的乘法,是用*来代表的
那么在初等数学当中,我们是用一个叉来表示乘法,在这里是*,
请同学们注意,那么在上机实践的过程当中,同学们应该能够找的到
星号实际上实在数字键的8这个键位上
好,下面呢,我们来演示幂运算,我们来计算4的平方
前一句我们依然注释掉,好
那么这个表达式的含义是计算4的二次方
两个星号表示幂运算,运行一下,好再来举一个例子
这个答案是多少呢,我们来看一下,是1
同学们还应该记得5的0次方,任何数的0次方返回的值都是1
同学们应该记得,这个呢是幂运算
好,下面呢我们来看Python当中的除法
前两句话我们注释一下,那么在Python当中
我前面也提到过,除法实际上是有两类的
那么在这里我同时举两个例子,来比较说明它们两个的差异
首先我用8/5,再举一个例子8//5,好,运行一下
一个答案是1.6,一个答案是1
8/5是1.6,这个没有问题,这个我们用计算器去算一定是1.6
这个跟我们传统意义上理解的除法是一样的
那么下面的8//5,这是什么含义呢?
实际上同学们从答案上也能推测出来 这种除法我们通常把它称之为整除
其含义是得到的商只保留整数部分,为了说明它的用法
我们再来举个例子我们举一个10//3,答案是多少?
显然应该是3,因为它一定是一个3.33333...是一个循环小数
那么我们只保留整数部分就是3
这个在很多的实际运用环境当中都是非常有用的
整除这种除法,好,下面呢我们看最后一个运算符
最后一个运输符呢表示的是求模,或者叫取余
好,我们来演示一下,假设我们依然用10%3
运行一下,答案是1,10/3应该是商应该是3,3*3得9,余1
所以这个%的含义实际上就是求它的除法得到结果的余数
好,今天呢我们主要介绍了算术运算符的常用的这些基本的方法
那么还有一个呢,对表达式的概念进行了一定的讲解
但是,我们现在所接触到的算术运算符和表达式的使用
实际上是非常简单和初级的,在后续的课程当中
我们会逐步的逐步给大家介绍更多丰富的内容
今天的课就讲到这
-课程简介
--课程简介
-A 课程视频(算数操作符及表达式)
--绪论
-B 课程视频(变量及赋值)
--变量
--项目提交
-C 辅助视频(计算机结构、Python开发环境安装)
-D 辅助视频(如何提交项目)
--项目提交
-第0周--小测验
-本周项目:"我喜欢Python"
--游戏说明
--程序说明
--编码步骤
--评分标准
--项目模板
--项目提交
-A 课程视频(函数)
--函数
--其它操作符
--随机函数
-B 课程视频(逻辑及表达式)
--逻辑值和比较
--条件
--编程技巧
-第1周--小测验
-本周项目:“老虎杠子鸡虫”游戏
--游戏说明
--程序说明
--编码步骤
--评分标准
--项目模板
-A 课程视频(Python交互式应用)
--事件驱动编程
--按钮
-B 课程视频(输入框、全局变量)
--输入框
--编程技巧
-第2周--小测验A
-第2周--小测验B
-本周项目:猫咪藏在哪个房间
--游戏说明
--程序说明
--编码步骤
--评分标准
--项目模板
-A 课程视频(画布绘图)
--画布和图形绘制
--字符串处理
--图片和音效
-B 课程视频(计时器)
--计时器
--交互式绘图
--“神奇时钟”游戏
--编程技巧
-第3周--小测验A
-第3周--小测验B
-本周项目:“神奇时钟”
--游戏说明
--程序说明
--编码步骤
--评分标准
--项目模板
-A 课程视频(列表)
--列表
--键盘输入
--碰撞和反射
-B 课程视频(键盘控制)
--速度控制
--运动
--编程技巧
--“桌上冰球”游戏
-第4周--小测验A
-第4周--小测验B
-本周项目:“桌上冰球”游戏
--游戏说明
--程序说明
--编码步骤
--评分标准
--项目模板
-A 课程视频(鼠标输入、列表进阶)
--鼠标输入
--Video
--Video
--Video
-B 课程视频(字典和图片)
--Video
--Video
--Video
--Video
-第5周--小测验A
-第5周--小测验B
-本周项目:“世界杯八强连连看”
--游戏说明
--程序说明
--编码步骤
--评分标准
--项目模板
-A 课程视频(类)
--华容道中的类
-B 课程视频(平铺图片)
--平铺图片
--理解对象
--编程技巧
--“华容道”游戏
-第6周--小测验A
-第6周--小测验B
-本周项目:“华容道”游戏
--游戏说明
--程序说明
--编码步骤
--评分标准
--项目模板
-A 课程视频(类进阶及文件操作)
--集合
--文件操作
--文字块类
--处理停止的文字块
-B 课程视频(游戏状态控制)
--游戏记分规则
--编程技巧
-第7周--小测验A
-第7周--小测验B
-本周项目:决战三字经
--游戏说明
--程序说明
--编程步骤
--评分标准
--项目模板
-A、课程视屏(精灵集合)
--Video
--精灵类
--战士类
--编程技巧
-B、课程视屏(动画)
--精灵碰撞
--精灵动画
--编程技巧
--保卫家园游戏
-第8周--小测验
-本周项目:守卫家园
--游戏说明
--程序说明
--编程步骤
--评分标准
--项目模板