电脑知识
中学生编程题目(中学生编程轻松上手与进阶书籍)
2023-04-12 10:33

(向老哥学习,村上不忘编程)

题目:请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)

题解:此题关键是 使用正则表达式找到匹配的子串,然后int()强制转换。

import re class Solution: def myAtoi(self, s: str) -> int: min_int,max_int = -2**31,2**31-1 mp = re.search(pattern = '^\s*(-|\+)?\d+',string = s) if mp == None: return 0 substr = mp.group() substr2 = substr.lstrip() r = int(substr2) if r < min_int: r = min_int if r > max_int: r = max_int return r

发表评论
0评