能通过的
def reverse(x):
tmp = int(''.join(list(list(str(abs(x)))[::-1])))
if x >= 0:
ans = tmp
else:
ans = -tmp
if (ans > 2 ** 31 - 1) or (ans < -2 ** 31):
return 0
else:
return ans
有问题的,希望大家帮忙看下
def reverse(x):
res = 0
while x != 0:
res = res * 10 + x % 10
x /= 10
if (res > 2 ** 31 - 1) or (res < -2 ** 31):
return 0
return res
print reverse(-123)
问题描述
第二个问题出在,对于-123的处理结果不是-123而是0。调试了一下才发现,-123%10在python中是等于7,而不是3。不知道怎么做,不想加判断,想问下 有没有其他方法