第七课有三个部分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里面就不对。
对于这节课来说,当我们比较浮点数 的时候,我们允许一些近似值。比如,在本网站的内部打分软件中,任何浮点数 输出都会被打分为正确如果它是几乎等于正确答案。 |
我们以一些联系来结束这节课。
恭喜!在完成这些练习之后,你可以开始下一课的学习了。