力扣8. 字符串转换整数 (atoi)

139 阅读1分钟

1. 题目

leetcode.cn/problems/st…

image.png

2. 考点

数字界限 [-231,231-1]
从前到后只有空格 所以需要针对空格去掉左边的 ret = s.lstrip()
re.findall(r'^[+\-]?\d+', ret) 以符号开头或者没有符号
int(*ret) 列表解包进行转整数

3. 核心代码

class Solution:
    def myAtoi(self, s: str) -> int:
        import re
        ret = s.lstrip()
        ret = re.findall(r'^[+\-]?\d+', ret)
        ret = int(*ret)
        return max(min(ret, 2 ** 31 - 1), -2 ** 31)


if __name__ == '__main__':
    s = Solution()
    print(s.myAtoi('words and -987'))