为什么输入为" +0 123" 时,输出为0,而不是123???求解!
1071 / 1079 个通过测试用例代码:
class Solution:
def myAtoi(self, str):
"""
:type str: str
:rtype: int
"""
str = str.replace(" ", "")
if len(str) == 0:
return 0
if str[0] != "-" and str[0] != "+" and (str[0] < "0" or str[0] > "9"):
return 0
flag = 0
re = 0
if str[0] == "-":
flag = 1
if str[0] == "-" or str[0] == "+":
str = str[1:]
for i in range(len(str)):
if str[i] >= "0" and str[i] <= "9":
re = 10 * re + int(str[i])
else:
break
if flag == 1:
re = 0 - re
if re > ( pow(2,31) - 1 ):
return pow(2,31) - 1
if re < ( 0 - pow(2,31) ):
return 0 - pow(2,31)
return re