第七课有三个部分A, B, C,顺序不限。
到目前为止,我们通过使用Python的运算符+, -, *, /和方程max and min进行了一些数学运算。在这节课中,我们会看到更多的运算符和方程,将会学习如何进行更复杂的运算。
数学运算符号
我们已经看到了该如何使用运算符进行加 (a + b),减(a - b),乘(a * b),除(a / b)。我们现在来学习三个新的运算符。
- 幂运算符
a ** b得出ab(b个a相乘)。比如,2 ** 3就是8(2×2×2)。 - 整数除法运算符
a // b计算a除以b的商的整数部分,忽略余数。比如,14 // 3是4。/li> - 模运算符
a % b计算a除以b的余数。比如,14 % 3是2。
模运算符应用广泛。例如:
- 如果现在是10点,100个小时之后是几点?(需要模12)
- 2032是闰年么?(需要模4,100,和400)
查看是不是闰年是整除性测试 的一个例子;在下一个练习中你会写一个程序,运行通用的除法测试。
数学方程
Python可以计算大部分能在科学计算器上找到的数学方程。
sqrt(x)计算x的算术平方根。exp(x)和log(x)是指数方程和对数方程。sin(x),cos(x),tan(x)等三角函数方程。Pi 是指 3.1415。
![]() | 当使用Python的三角函数方程时,x一定要使用弧度制,而不是角度制。 |
Python将这些大量的方程收入一个叫做模块的集合里。以上的方程属于math模块。在使用任何模块里的方程前,你需要导入模块,下面是一个例子。为了使用一个模块中的方程,你需要依次输入模块的名字,一个句号,方程的名字。
把它们放在一起
正如你在之前的联系所看到的那样,你可以通过结合运算符来建立数学表达式。Python通过使用“运算顺序”来计算:
先是Brackets(括号),然后是then Exponents(指数),然后是Division(除法)和Multiplication(乘法),最后是Addition(加法)和Subtraction(减法)。
这个法则可以缩写成"BEDMAS"。整数除法和模可以归入"除法和乘法"类。比如,
3 * (1 + 2) ** 2 % 4第一部是计算小括号(1+2 = 3),然后是指数(3 ** 2 = 9),然后是乘法(3 * 9 = 27),最后是模27 % 4 =
3.
6 - 52 // 5 ** 2
涉及到负数的整数除法:当a和b都是正数,表达式a // b和int(a / b)是一样的。然而,当a是负数时,a // b采取"向负无穷靠近"原则,int(a / b)采取"向零靠近"原则。
整数和小数
数学表达式的结果是一个数。正如我们之前所看到的一样,每一个数都以下面两种形式中的一种储存:int或float。int代表整数,不论正负,没有大小限制。
![]() | Python不接受1 000 000或1,000,000形式的数字。只接受1000000的形式。 |
Tfloat代表小数。就像是一个简单的计算机,将1/3以0.33333333的形式储存,Python也将小数以近似值的形式储存。
![]() | 因为Python使用小数的近似值,某些方程从数学角度上看是对的,但是在Python里面就不对。
对于这节课来说,当我们比较浮点数的时候,我们允许一些近似值。比如,在本网站的内部打分软件中,任何浮点数输出都会被打分为正确如果它是几乎等于正确答案。 |
我们以一些联系来结束这节课。
恭喜!在完成这些练习之后,你可以开始下一课的学习了。




