Python 算术运算符

Python 算术运算符可帮助对整数和浮点数等数字数据类型执行数学运算。本文将解释该编程语言中可用的算术运算符以及如何在实际场景中使用它们。

算术运算符是编程世界中的基本概念,本页将深入探讨它。Python 算术运算符包括 +、-、*、/、//、** 和 %,用于执行加法、减法、乘法、除法、整除、指数(或幂)和模运算。所有这些算术运算符都是二元运算符,这意味着它们作用于两个操作数。

您需要这些算术运算符来执行简单的计算、复杂的数学运算、科学计算、财务分析等。在使用 Python 算术运算符时,您应该注意括号,因为括号控制运算符的执行顺序。因此,理解这些运算符对每个程序员都至关重要。

Python 算术运算符

下表显示了所有算术运算符及其示例。

算术运算符运算示例
+两个操作数相加10 + 2 = 12
一个操作数减去另一个操作数10 – 2 = 8
*两个操作数相乘10 * 2 = 20
/一个操作数除以另一个操作数。10 / 2 = 5.0
%取模 – 返回除法运算后的余数10 % 2 = 0(这里余数为零)。如果是 10 % 3,则为 1。
**指数 - 将数字提升到幂。它返回一个变量相对于另一个变量的幂。10 ** 2 = 100(10 的 2 次方或 10²)。
//整除 - 与除法相同,但它将通过向下取整小数部分来返回整数值17 // 3 = 5。如果将 17 除以 3,您将得到 5.667。整除运算符将截断小数部分并输出整数。

Python 算术运算符示例

在此示例中,我们使用两个变量 a 和 b,它们的值分别为 12 和 3。我们将使用这两个变量借助运算符执行各种算术运算。

a = 12
b = 3
addition = a+b
subtraction = a-b
multiplication = a*b
division = a / b
modulus = a % b
exponent = a**b
Floor_Division = a // b
print("Addition of two numbers 12 and 3 is : ", addition)
print("Subtracting Number 3 from 12 is : ", subtraction)
print("Multiplication of two numbers 12 and 3 is : ", multiplication)
print("Division of two numbers 12 and 3 is : ", division)
print("Modulus of two numbers 12 and 3 is : ", modulus)
print("Exponent of two numbers 12 and 3 is : ", exponent)
print("Floor Division of two numbers 12 and 3 is : ", Floor_Division)
Python Arithmetic Operators 1

以下 Python 语句将求指数。这意味着 12 的 3 次方 = 12 * 12 * 12 = 1728

exponent = a ** b

当我们使用除法 ( / ) 运算符时,结果将是浮点数或小数。如果您想通过四舍五入值以整数值显示输出,则使用整除 ( // )。

Python 算术运算符优先级和括号示例

运算符优先级是指决定表达式求值顺序的规则。如果您在单个语句中使用多个算术运算符,它在求值表达式时会遵循特定的优先级顺序。在处理复杂表达式时,我们必须使用多个运算符。因此,好的一点是您可以控制运算符的执行顺序,坏的一点是如果您放错括号,结果将不准确。

Python 算术运算符的优先级顺序如下

  1. 括号 () 首先求值。
  2. 加法 (+) 和减法 (-) 从左到右求值。
  3. 乘法 (*)、除法 (/) 和整除 (//) 从左到右求值。
  4. 幂运算 (**) 具有最高优先级。

下面的算术运算符示例解释了括号如何影响运算顺序。

当单个语句中存在 + 和 - 的组合时,它们从左到右执行。

  • 10 + 5 – 3 = 首先 10+5 = 15,然后 15 -3 = 12
  • 10 – 5 + 3 = 首先 10 -5 = 5,然后 5 + 3 = 8
# + and - from left to right
print(10 + 5 - 3)
print(10 - 5 + 3)
12
8

同样,当存在任意两个或三个 *、/ 和 // Python 算术运算符的组合时,它们从左到右执行。但是,如果我们将它们与加法和减法结合,*、/ 和 // 首先执行,然后是 + 和 -。

  • 10 * 5 / 2 = 首先 10 * 5 = 50,然后 50 / 2 = 25.0
  • 10 + 5 * 4 = 首先 5 * 4 = 20,然后 10 + 20 = 30
  • 2 + 10 * 5 // 3 = 首先 10 * 5 = 50,其次 50 // 3 = 16,然后 2 + 16 = 18
print(10 * 5 / 2)
print(10 + 5 * 4)
print(2 + 10 * 5 // 3)
25.0
30
18

括号 () 首先求值。因此,它们改变了整个执行过程。例如,

  • 10 – (5 + 3) = 首先 5 + 3 = 8,然后 10 – 8 = 2。如果去掉括号,结果将变为 8。
  • 2 + (10 – 5) * 6 = 首先 10 – 5 = 5,其次 5 * 6 = 30,然后 2 + 30 = 32。
print(10 - (5 + 3))
print(2 + (10 - 5) * 6)
2
32

字符串上的算术运算

在此 Python 算术运算符示例中,我们使用两个字符串数据类型的变量 a 和 b。接下来,我们使用这两个变量来展示在对字符串数据类型执行算术运算时通常会遇到的问题。

a = "Tutorial"
b = "Gateway"
print(a + b)
print(a + " " + b)
print(a * 3)
print((a + " ")* 3)
print(a + 3)
print(a + str(3))

提示:请注意括号。如果放错了,您将得到错误的结果。

Arithmetic Operators 2

在此算术运算符程序中,我们首先声明了两个字符串数据类型的变量 a 和 b,它们的值分别为“Tutorial”和“Gateway”。

a = "Tutorial"
b = "Gateway"

它将输出显示为“TutorialGateway”,因为当我们在字符串变量之间使用“+”运算符时,控制器会将两个字符串连接起来。

print(a+b)

在“Tutorial”和“Gateway”之间插入空格。这意味着输出将是“Tutorial Gateway”。

print(a+ " " +b)

使用 Python 算术运算符 * 中的一个将 Tutorial 显示三次

print(a * 3)

在每次迭代之间插入空格。

print((a + " ")* 3)

这很有趣,因为我们在字符串和整数之间使用了“+”符号。

print(a + 3)

它会抛出错误,因为它不会隐式地将整数对象转换为字符串对象。要解决此问题,我们必须显式地转换 3。在连接字符串和整数时要小心。类型转换在这些算术运算符中起着主要作用。

print(a + str(3))