36.leetcode8_string_to_integer

1.题目描述

自己编写一个函数使字符串型的字符转为整形数字

2.题目分析

去除开头空格,判断开头的“+”“-”号就可以了。

3.解题思路

 1 class Solution(object):
 2     def myAtoi(self, str):
 3         """
 4         :type str: str
 5         :rtype: int
 6         """
 7         num=0
 8         o=1
 9         temp=""
10         if str=="": #判断是否为空字符串
11             return 0
12         while str[0]==" ": #去除空格
13             str=str[1:]
14         if str[0]=="+": #判断正负号
15             str=str[1:]
16         elif str[0]=="-":
17             o=-1
18             str=str[1:]
19         for i in str: #去除字符串中其他字符
20             if "0"<=i<="9":
21                 temp=temp+i
22             else:
23                 break
24         if temp=="":
25             return 0
26         result=o*int(temp) #字符串转数字
27         if result>2**31-1: #判断是否溢出
28             return 2**31-1
29         elif result<-2**31
30             return -2**31
31         return result 

 

posted @ 2018-02-24 19:55  vlice  阅读(86)  评论(0编辑  收藏  举报