python刷题之整数反转

哎呦这个整数反转,原来门限应该放在最后面,搞得我提交了n多次

class Solution:
    def reverse(self, x: int) -> int:
        if x<-(2**31) or x>(2**31)-1: 
            
            return 0
        elif x==0:
            return 0
        else:
            if x>0:
                b=1
            else:
                b=-1
            x=abs(x)
                
            a=0
            result=0
            length=len(str(x))
            
            for i in range(length-1,-1,-1):
                a=int(x/(10**i))
                
                x=x%(10**i)
    # print(x)
                result+=a*(10**(length-i-1))
            if result<-(2**31) or result>(2**31)-1:  
                return 0
            
            return b*result
        #判决应该放在最后啊

你可能感兴趣的:(leetcode_python)