题目描述
将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0
输入描述:
输出描述:
如果是合法的数值表达则返回该数字,否则返回0
# -*- coding:utf-8 -*-
class Solution:
def StrToInt(self, s):
# write code here
if s=='':return 0
nums = ['0','1','2','3','4','5','6','7','8','9']
labels = ['+','-']
sign = 1
if s[0] in labels:
if s[0]=='-':
sign = -1
s = s[1:]
final_num = 0
for char in s:
if char not in nums:
return 0
else:
final_num = final_num*10 + nums.index(char)
final_num = sign*final_num
if final_num<=0x7FFFFFFF and final_num>=(-0x7FFFFFFF-1):
return final_num
else:
return 0