Python把字符串转换成整数
主要是区分输入和合法性,比如输入一个None,输入一个空字符串 "",或者输入的字符串中含有“+”或者“-”,或者输入的字符串中含有除去+ — 数字的非数字字符,如何段应正常的输出还是报错,需要考虑的全面一些。
'''
将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数
'''
# -*- coding:utf-8 -*-
class Solution:
# 如果输出是0, 通过检查flag判断输入不合法还是输入直接是'0'
def StrToInt(self, s):
flag = False
if s == None or len(s) < 1:
return 0
numStack = []
dict = {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}
for i in s:
if i in dict.keys():
numStack.append(dict[i])
elif i == '+':
continue
elif i == '-':
continue
else:
return 0
print(numStack)
ans = 0
if len(numStack) == 1 and numStack[0] == 0:
flag = True
return 0
for i in numStack:
ans = ans*10 + i
if s[0] == '-':
ans = 0 - ans
return ans
test = '-123-56'
s = Solution()
print(s.StrToInt(test))
解压密码: detechn或detechn.com
免责声明
本站所有资源出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户自行鉴别,做一个有主见和判断力的用户。
本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。