美文网首页
字符串转整数

字符串转整数

作者: 地铁姑娘 | 来源:发表于2018-09-15 10:13 被阅读0次
#encoding=utf-8
class Solution(object):
    def myAtoi(self,str):
        '''
        实现字符串转整数
        :param str: str
        :return: int
        '''
        import re
        #字符串中查找全部符合条件的整数,返回的是列表,第一个参数是正则,第二个是字符串
        aim = re.findall(r'^[-+]?\d+',str.strip())#str.strip()去左右空格,返回的是list
        if aim:
            str_temp2 = ''
            str_temp = aim[0]#哪怕aim里只有一个元素,也要这样取值赋值给str_temp
            if str_temp[0]=="-" or str_temp[0]=="+":
                str_temp2 = str_temp[1:]
            else:
                str_temp2 = str_temp
            ret_int = int(str_temp2)
            if str_temp[0]=="-":
                #三目运算,判断是否溢出
                #如果ret_int<=2**31则返回-2**31
                return -ret_int if ret_int<=2**31 else -2**31
            else:
                return ret_int if ret_int<2**31 else 2**31-1
        else:
            return 0
if __name__=="__main__":
    s = Solution()
    atoiResult = s.myAtoi("-89")
    print atoiResult
    print type(atoiResult)

image.png

相关文章

  • 机试常用算法和题型-进制转换专题

    使用sscanf将字符数组转为整型的办法 字符串到整数 整数到字符串(十进制转字符串) 十进制转其他进制 其他进制...

  • 二进制、十进制互转

    十进制整数 转 二进制数组 二进制字符串 转 十进制整数 二进制数组 转 十进制整数

  • LeetCode-12 整数转罗马数字

    题目:12. 整数转罗马数字 难度:中等 分类:数学、字符串 解决方案:整数比较 今天我们学习第12题整数转罗马数...

  • 字符串转整数

    题目 实现 atoi,将字符串转为整数。在找到第一个非空字符之前,需要移除掉字符串中的空格字符。如果第一个非空字符...

  • 字符串转整数

  • 字符串转整数

    题目:输入字符串,转变为对应整数 样式:输入"123",输出123 解法:遍历输出 主要在于判断正负溢出情况

  • 字符串转整数

  • 4,字符串转整数/数组与字符串

    字符串转整数 (atoi) 实现 atoi,将字符串转为整数。 在找到第一个非空字符之前,需要移除掉字符串中的空格...

  • 【C/C++】字符串转数字

    字符串转整数,不仅是面试题常考题目,也是日常常用函数。这里对其中的区别做一个备注,便于以后查看。 一、字符串转整数...

  • 字符串转整数 (atoi)

    字符串转整数 (atoi) 实现atoi,将字符串转为整数。 在找到第一个非空字符之前,需要移除掉字符串中的空格字...

网友评论

      本文标题:字符串转整数

      本文链接:https://www.haomeiwen.com/subject/hlyzgftx.html