[leetcode]7整数反转

这道题有几个需要注意的点,第一个是对于反转后开头0的处理,这里我使用python,通过字符串对象的replace方法删除头部的0,但是要注意一次只替换一个,不能让它把中间的0也替换掉了。

第二就是对于只有1个输入0的时候,一种方法是单独判断,另一种方法是判断字符串长度如果为0,说明字符串全部由0组成并且都被删除了,这个时候补上即可。

 1 class Solution:
 2     def reverse(self, x: int) -> int:
 3         if x==0:
 4             return 0
 5         ans=1
 6         if x<0:
 7             ans=-1
 8             x=-x
 9         str1=str(x)
10         str1=str1[::-1]
11         while(str1[0]=='0'):
12             str1=str1.replace('0','',1)
13         ans=ans*eval(str1)
14         if ans>(2**31-1):
15             return 0
16         if ans<(0-2**31):
17             return 0
18         return ans
原文地址:https://www.cnblogs.com/trickofjoker/p/10559775.html