Python 负数的 Lambda 函数

Python Lamba function for negative number

我使用 lamba 函数将十进制负数转换为二进制二进制数 complement.However 结果不是二进制数。

我的代码:

num1 = int(raw_input("Enter first bumber"))

if num1  < 0:
def tobin(x, count = 8):
     return "".join(map(lambda y:str((x>>y)&1), range(count-1, -1, -1)))
    num1 = tobin
print num1

结果:

Enter first bumber -5
<function tobin at 0x1f9c260>

预期结果应该是 1011。

谢谢。

num1 = int(raw_input("Enter first bumber:\t"))

def tobin(x, count=4):
    return "".join(map(lambda y: str((x >> y) & 1), range(count - 1, -1, -1)))
if num1  < 0:
    num1 = tobin(num1)
print num1

结果:

Enter first bumber: -5
1011