Python math.copysign() 方法



Python math.copysign() 方法返回一个浮点数,其中包含第一个参数的大小(绝对值)和第二个参数的符号。在数学上,它可以表示为 -

copysign(x,y) = |x|.sign(y)

其中,|x|表示 x 的绝对值,sign(y) 表示 y 的符号。例如,如果 x 为 5 且 y 为 -3,则 math.copysign(5, -3) 将返回 -5,因为它采用 5 的大小并对其应用 -3 的符号,从而得到 -5。

当你想改变数字的符号同时保留其大小,或者你想根据另一个值设置数字的符号时,math.copysign() 方法很有用。

语法

以下是 Python math.copysign() 方法的基本语法 -


 math.copysign(x, y)

参数

此方法接受以下参数 -

  • x −这是一个数值,其量级将在结果中使用。
  • y −这是一个数值,其符号将在结果中使用。

返回值

该方法返回一个浮点数,其大小为 x,符号为 y。如果 x 和 y 都是整数,则返回值也将是整数。

示例 1

在下面的示例中,我们使用 copysign() 方法将 “-1” 的符号复制到 “10” 的大小 −


import math
result = math.copysign(10, -1)
print("The result obtained is:",result)	

输出

获得的输出如下 -

The result obtained is: -10.0

示例 2

在这里,我们将 0 的符号复制到 5 的量级。由于零的符号是正的,因此结果将是一个正整数值 -


import math
result = math.copysign(5, 0)
print("The result obtained is:",result)	

输出

以下是上述代码的输出 -

The result obtained is: 5.0

示例 3

在此示例中,我们使用变量 “magnitude” 和 “sign” 来演示如何将一个值的符号复制到另一个值 −


import math
magnitude = 5
sign = -1
result = math.copysign(magnitude, sign)
print("The result obtained is:",result)	

输出

我们得到的输出如下所示 -

The result obtained is: -5.0

示例 4

math.copysign() 方法保留第二个参数的符号,而不管第一个参数的大小如何。

此示例将符号 1 复制到幅度 -15,得到 15.0。即使大小为负,该符号也会被覆盖为正 -


import math
result = math.copysign(-15, 1)
print("The result obtained is:",result)	

输出

生成的结果如下所示 -

The result obtained is: 15.0