【问题标题】:Python assign sign of number to variablePython将数字符号分配给变量
【发布时间】:2013-11-13 03:38:02
【问题描述】:

我有一个 int 类型的变量,它是 Python,所以它可以是正数和负数。现在,我想让另一个变量与第一个变量1 具有相同的符号。使用 if 语句很容易做到这一点,然后将 -1 或 +1 分配给一个变量,并将我想要这个符号的每个变量乘以 -1 或 +1。但后来我想也许还有另一种方法可以做到这一点(例如内置函数)。有没有类似“sign = getsignbit(value)”的东西?

编辑: 解决了! math.copysign 做了这件事, cmp(x,0) 也可以,但我不仅想要 -1、0 或 1,还要将 5 变成 -5。

【问题讨论】:

  • sign = lambda x: math.copysign(1, x) 看起来不错

标签: python function if-statement sign built-in


【解决方案1】:

没有内置的 sign 函数(请参阅此答案以获得一些解释:Why doesn't Python have a sign function?),但 math.copysign 可能对您有用。 http://docs.python.org/2/library/math.html#math.copysign

【讨论】:

    【解决方案2】:

    我认为没有内置函数,但您可以轻松滚动自己的函数:

    def the_sign(num):
        return cmp(num, 0)
    

    【讨论】:

    猜你喜欢
    • 2019-02-08
    • 2019-02-20
    • 2014-11-19
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 2013-02-23
    • 1970-01-01
    相关资源
    最近更新 更多