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