leetcode 字符串轉換整數 (atoi) python3

class Solution:
    def myAtoi(self, str: str) -> int:
        str=str.strip()
        num=0

        if len(str)==0:
            return 0
    
        if(str[0]!='+' and str[0]!='-' and not str[0].isdigit()):
            return 0
        elif str[0]=='-':
            for char in str[1:]:
                if char.isdigit():
                    num=num*10+int(char)
                else:
                    break
            num=-num
        elif str[0]=='+':
            for char in str[1:]:
                if char.isdigit():
                    num=num*10+int(char)
                else:
                    break
        else:
            for char in str:
                if char.isdigit():
                    num=num*10+int(char)
                else:
                    break

        if num<pow(-2, 31):
            return -2147483648
        if num > pow(2, 31) - 1 :
            return pow(2, 31)-1
        return num
    
    
    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章