Python 中的“//”是什么意思?


在本文中,我们将详细了解 Python 中的 // 运算符。

要在 Python 中进行地板除法,请使用 **双斜杠 //** 运算符。此 // 运算符将第一个数字除以第二个数字,并将结果舍入到最接近的整数(或整数)。

// 运算符的语法

要使用双斜杠 **//** 运算符,请遵循与常规除法相同的步骤。唯一的区别是您使用双斜杠 // 代替单斜杠 / −

语法

first_number// second_number

地板除法

算法(步骤)

以下是执行所需任务的算法/步骤。−

  • 创建一个变量来存储输入数字 1。

  • 创建另一个变量来存储输入数字 2。

  • 使用双斜杠 // 运算符,通过将 inputNumber_1 除以 inputNumber_2 来执行地板除法,并创建另一个变量来存储它。**双斜杠 (//)** 运算符通过舍入到最接近的整数来返回结果作为整数。

  • 打印 inputNumber_1 除以 inputNumber_2 的地板除法结果。

示例

以下程序使用 Python 中的 // 运算符返回第一个数字除以第二个数字的地板除法结果−

# input number 1 
inputNumber_1 = 10
# input number 2
inputNumber_2 = 3
# performing floor division by dividing inputNumber_1 by inputNumber_2
# it returns the result as an integer by rounding off to the nearest integer
result_number = inputNumber_1 // inputNumber_2

# printing the result of floor division of inputNumber_1 by inputNumber_2
print("floor division of inputNumber_1 by inputNumber_2 = ", result_number)

输出

floor division of inputNumber_1 by inputNumber_2 =  3

显示 // 和 / 运算符之间的区别

算法(步骤)

以下是执行所需任务的算法/步骤。−

  • 创建一个变量来存储输入数字 1。

  • 创建另一个变量来存储输入数字 2。

  • 使用 **双斜杠 (//)** 运算符通过将 inputNumber_1 除以 inputNumber_2 来执行地板除法。它通过舍入到最接近的整数来返回结果作为整数。

  • 打印 inputNumber_1 除以 inputNumber_2 的地板除法结果。

  • 使用 **单斜杠 (/)** 通过将 inputNumber_1 除以 inputNumber_2 来执行除法。它将结果作为浮点数返回。

  • 打印 **inputNumber_1 除以 inputNumber_2** 的除法结果。

示例

以下程序使用 Python 中的 // 和 / 运算符返回第一个数字除以第二个数字的地板除法和除法结果−

# input number 1 
inputNumber_1 = 10
# input number 2
inputNumber_2 = 3

# performing floor division by dividing inputNumber_1 by inputNumber_2 using //
# it returns the result as an integer by rounding off to the nearest integer
result_floordiv = inputNumber_1 // inputNumber_2
 
# printing the result of floor division of inputNumber_1 by inputNumber_2
print("Floor division of inputNumber_1 by inputNumber_2 = ", result_floordiv)

# performing division by dividing inputNumber_1 by inputNumber_2 using /
# it returns the result as a floating-point number 
result_div = inputNumber_1 / inputNumber_2

# printing the result of the division of inputNumber_1 by inputNumber_2
print("Division of inputNumber_1 by inputNumber_2 = ", result_div)

输出

Floor division of inputNumber_1 by inputNumber_2 =  3
Division of inputNumber_1 by inputNumber_2 =  3.3333333333333335

上面的代码显示 **双斜杠 (//) 运算符** 将两个数字除法的结果向下舍入到最接近的整数。

**注意** − 如果我们对负数进行地板除法,结果仍然会向下舍入(最接近的整数)

双斜杠 // 运算符的功能类似于 math.floor()

在 Python 中,**math.floor()** 与双斜杠 // 运算符一样,将数字向下舍入到最接近的整数。

示例

因为它们在幕后做的事情相同,所以 **math.floor() 是 // 运算符的替代方法。**

# importing math module
import math

# input number 1 
inputNumber_1 = 10
# input number 2
inputNumber_2 = 3

# performing floor division by dividing inputNumber_1 by inputNumber_2 using //
# it returns the result as an integer by rounding off to the nearest integer
result_floordiv = inputNumber_1 // inputNumber_2
 
# printing the result of floor division of inputNumber_1 by inputNumber_2
print("Floor division of inputNumber_1 by inputNumber_2 = ", result_floordiv)

# performing division by dividing inputNumber_1 by inputNumber_2 using /
# it returns the result as a floating-point number 
result_mathfloor = math.floor(inputNumber_1 / inputNumber_2)

# printing the result of the division of inputNumber_1 by inputNumber_2
print("math.floor of inputNumber_1 by inputNumber_2 = ", result_mathfloor)

输出

Floor division of inputNumber_1 by inputNumber_2 =  3
math.floor of inputNumber_1 by inputNumber_2 =  3

双斜杠 // 运算符幕后的工作原理

当您使用 **// 运算符** 除以两个数字时,**__floordiv__()** 函数会在幕后被调用。

示例

以下程序显示了 // 运算符的工作方式−

# importing math module
import math

# input number 1 
inputNumber_1 = 10
# input number 2
inputNumber_2 = 3

# performing floor division by dividing inputNumber_1 by inputNumber_2 using //
# it returns the result as an integer by rounding off to the nearest integer
result_floordiv = inputNumber_1 // inputNumber_2
 
# printing the result of floor division of inputNumber_1 by inputNumber_2
print("Floor division of inputNumber_1 by inputNumber_2 = ", result_floordiv)

# performing division by dividing inputNumber_1 by inputNumber_2 using /
# it returns the result as a floating-point number 
floordiv = inputNumber_1.__floordiv__(inputNumber_2)

# printing the result of the division of inputNumber_1 by inputNumber_2
print("The floordiv method returns the same result as = ", floordiv)

输出

Floor division of inputNumber_1 by inputNumber_2 =  3
The floordiv method returns the same result as =  3

结论

在本教程中,您学习了如何使用双斜杠 // 运算符以及它在幕后的工作原理。此外,您还了解了两个 // 运算符的替代方法:math.floor() 和 __floordiv__() 函数。

不要混淆使用哪一个。这三种地板除法方法都以相同的方式工作。但是,我建议您使用双斜杠 // 运算符,因为它可以让您少输入。

更新于:2023年1月31日

5000+ 次浏览

启动您的 职业生涯

完成课程后获得认证

开始
广告