如何使用运算符在 Python 3 中进行数学运算

介绍

数字在编程中极为常见。它们用于通过分配数字代码来表示诸如屏幕尺寸、地理位置、金钱和积分、视频中传递的时间、游戏头像的位置和颜色等内容。

能够在编程中有效地执行数学运算是一项需要培养的重要技能,因为您处理数字的频率很高。虽然对数学有高层次的理解肯定可以帮助你成为一个更好的程序员,但这不是先决条件。如果您没有数学背景,请尝试将数学视为实现您想要实现的目标的工具,并作为提高逻辑思维的一种方式。

我们将使用 Python 最常用的两种数字数据类型,整数浮点数

  • 整数整数,可以是正数、负数或 0 (…, -1, 0, 1, …)。
  • 花车是实数,它们包含小数点(如9.0-2.25)。

本教程将介绍可与 Python 中的数字数据类型一起使用的运算符。

运营商

一个操作者是一个符号或功能指示的操作。例如,在数学中,加号或 + 是表示加法的运算符。

在 Python 中,我们会看到一些从数学中带来的熟悉的运算符,但我们将使用的其他运算符是特定于计算机编程的。

这是 Python 中与数学相关的运算符的快速参考表。我们将在本教程中介绍以下所有操作。

手术 它返回什么
x + y 的总和xy
x – y x和的区别y
-X 改变了符号 x
+x 身份 x
x * y x和的产品y
x / y x 和 y 的商
x // y 从地板分工商xy
% y 剩余的 x / y
x**y xy权力

我们还将介绍复合赋值运算符,包括+=*=,它们将算术运算符与运算符组合在一起=

加减

在 Python 中,加法和减法运算符的表现就像它们在数学中的表现一样。实际上,您可以将 Python 编程语言用作计算器。

让我们看一些例子,从整数开始:

print(1 + 5)
Output
6

print我们可以初始化变量以代表整数值,而不是直接将整数传递到语句中:

a = 88
b = 103

print(a + b)
Output
191

因为整数既可以是正数也可以是负数(也可以是 0),所以我们可以将负数与正数相加:

c = -36
d = 25

print(c + d)
Output
-11

加法与浮点数的行为类似:

e = 5.5
f = 2.5

print(e + f)
Output
8.0

因为我们将两个浮点数相加,Python 返回了一个带小数位的浮点值。

减法的语法与加法相同,只是您需要将运算符从加号 ( +) 更改为减号 ( -):

g = 75.67
h = 32

print(g - h)
Output
43.67

在这里,我们从浮点数中减去一个整数。如果方程中涉及的数字中至少有一个是浮点数,Python 将返回一个浮点数。

一元算术运算

一元数学表达式仅由一个组件或元素组成,在 Python 中,加号和减号可用作与值配对的单个元素,以返回值的标识 ( +),或更改值的符号 ( -)。

虽然不常用,但加号表示值的身份。我们可以使用带有正值的加号:

i = 3.3
print(+i)
Output
3.3

当我们使用带有负值的加号时,它也会返回该值的标识,在这种情况下它将是一个负值:

j = -19
print(+j)
Output
-19

对于负值,加号返回相同的负值。

或者,减号更改值的符号。因此,当我们传递一个正值时,我们会发现该值之前的减号将返回一个负值:

i = 3.3
print(-i)
Output
-3.3

或者,当我们使用负值的减号一元运算符时,将返回正值:

j = -19
print(-j)
Output
19

由加号和减号指示的一元算术运算将返回值在 的情况下的标识+i,或在 的情况下返回值的相反符号-i

乘法和除法

就像加法和减法一样,乘法和除法看起来与它们在数学中的表现非常相似。我们将在 Python 中用于乘法*的符号,我们将用于除法的符号是/

这是在 Python 中使用两个浮点值进行乘法的示例:

k = 100.1
l = 10.1

print(k * l)
Output
1011.0099999999999

当您在 Python 3 中进行除法时,即使您使用两个整数,您的商也将始终作为浮点数返回:

m = 80
n = 5

print(m / n)
Output
16.0

这是Python 2 和 Python 3 之间主要变化之一Python 3中的做法提供了一个分数的答案,这样,当您使用/划分112的商5.5将被退回。在 Python 2 中,表达式返回的商11 / 25

Python 2 的/运算符执行floor 除法,其中对于商x,返回的数字是小于或等于 的最大整数x如果您print(80 / 5)使用 Python 2 而不是 Python 3运行上面的示例,您将收到16不带小数位的输出。

在 Python 3 中,您可以使用//来执行楼层划分。该表达式100 // 40将返回 的值2当您需要商为整数时,楼层除法很有用。

模数

%运营商模,它返回余数,而不是分裂后的商数。例如,这对于查找相同数字的倍数很有用。

让我们看看模数的作用:

o = 85
p = 15

print(o % p)
Output
10

分解一下,85 除以 15 返回 5 的商和 10 的余数。10这里返回的值是因为模运算符返回除法表达式的余数。

如果我们使用两个带模数的浮点数,则余数将返回一个浮点值:

q = 36.0
r = 6.0

print(o % p)
Output
0.0

在 36.0 除以 6.0 的情况下,没有余数,因此0.0返回的值

力量

**Python 中运算符用于将左边的数字增加到右边指数的幂。也就是说,在表达式 中5 ** 3,5 是 3 次方。在数学中,我们经常看到这个表达式被渲染为 5³,而真正发生的事情是 5 被自身乘以 3 次。在 Python 中,我们将125通过运行5 ** 3获得相同的结果5 * 5 * 5

让我们看一个带有变量的例子:

s = 52.25
t = 7

print(s ** t)
1063173305051.292

将浮点数提高52.257通过**运算符的幂会导致返回一个大的浮点值。

运算符优先级

在 Python 中,就像在数学中一样,我们需要记住运算符将按照优先顺序进行计算,而不是从左到右或从右到左。

如果我们看下面的表达式:

u = 10 + 10 * 5

我们可以从左到右阅读它,但请记住乘法将首先完成,因此如果我们调用print(u),我们将收到以下值:

Output
60

这是因为10 * 5计算为50,然后我们添加1060作为最终结果返回

相反,如果我们想将值添加1010,然后将该总和乘以5,我们可以像在数学中一样使用括号:

u = (10 + 10) * 5
print(u)
Output
100

记住操作顺序的一种方法是通过首字母缩写词PEMDAS

命令 信件 代表
1 P arentheses
2 Ë xponent
3 中号ultiplication
4 D d暂无报价参数
5 一种 一个ddition
6 小号ubtraction

您可能熟悉操作顺序的另一个首字母缩写词,例如BEDMASBODMAS无论哪种首字母缩略词最适合您,请在 Python 中执行数学运算时尽量记住它,以便返回您期望的结果。

赋值运算符

最常见的赋值运算符是您已经使用过的运算符:等号==赋值操作符分配到左边的变量的权值。例如,v = 23将整数的值赋给23变量v

编程时,通常使用复合赋值运算符对变量的值执行操作,然后将结果新值分配给该变量。这些复合运算符将算术运算符与运算符组合在一起=,因此对于加法,我们将结合+使用=以得到复合运算符+=让我们看看它是什么样子的:

w = 5
w += 1
print(w)
Output
6

首先,我们将变量设置为w等于 的值5,然后我们使用+=复合赋值运算符将右边的数字与左边变量的值相加,然后将结果赋值给w

for 循环的情况下经常使用复合赋值运算符,当您想要多次重复一个过程时将使用它:

for x in range (0, 7):
    x *= 2
    print(x)
Output
0 2 4 6 8 10 12

使用 for 循环,我们能够自动执行将*=变量乘以w数字2然后将结果分配到变量中的运算符的过程,w以便 for 循环的下一次迭代。

对于本教程中讨论的每个算术运算符,Python 都有一个复合赋值运算符:

y += 1          # add then assign value

y -= 1          # subtract then assign value

y *= 2          # multiply then assign value

y /= 3          # divide then assign value

y // = 5        # floor divide then assign value

y **= 2         # increase to the power of then assign value

y %= 3          # return remainder then assign value

当需要逐步增加或减少事物时,或者当您需要在程序中自动化某些过程时,复合赋值运算符会很有用。

结论

本教程涵盖了您将在整数和浮点数值数据类型中使用的许多运算符。如果您想继续阅读 Python 中的数字,可以继续阅读内置 Python 3 函数处理数字

要了解有关其他数据类型的更多信息,请查看了解 Python 3 中的数据类型,并通过阅读如何转换 Python 3 中的数据类型了解如何转换数据类型

觉得文章有用?

点个广告表达一下你的爱意吧 !😁