题目描述
将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0
输入描述:
输入一个字符串,包括数字字母符号,可以为空
输出描述:
如果是合法的数值表达则返回该数字,否则返回0
1 # -*- coding:utf-8 -*- 2 class Solution: 3 def StrToInt(self, s): 4 # write code here 5 dic={"0":0,"1":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9} 6 flag="+" 7 if len(s)>0 and (s[0]=="+" or s[0]=="-"): 8 flag=s[0] 9 s=s[1:] 10 if s == "" or s.isdigit()==False: 11 return 0 12 count=len(s) 13 res=0 14 for e in s: 15 res+=pow(10,count-1)*dic[e] 16 count-=1 17 if flag=="-": 18 res=-1*res 19 if res<=-2147483649 or res >=2147483648: 20 res=0 21 return res
2019-12-27 19:37:16