把字串轉換成整數

2021-09-11 14:24:38 字數 947 閱讀 3465

題目描述

將乙個字串轉換成乙個整數(實現integer.valueof(string)的功能,但是string不符合數字要求時返回0),要求不能使用字串轉換整數的庫函式。 數值為0或者字串不是乙個合法的數值則返回0。

輸入描述:

輸入乙個字串,包括數字字母符號,可以為空

輸出描述:

如果是合法的數值表達則返回該數字,否則返回0

示例1輸入

複製+2147483647

1a33

輸出複製

2147483647

0注意:符號位可以為空

# -*- coding:utf-8 -*-

class solution:

def strtoint(self, s):

if not s or s == '+' or s == '-':

return 0

numlist = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

flag = 1

if s[0] == '+': # 符號位可以為空,所以flag 初始值為1,輸入123,輸出123

flag = 1

s = s[1:]

if s[0] == '-':

flag = -1

s = s[1:]

res = 0

for string in s:

if string in numlist:

res = res * 10 + numlist.index(string) # 不能直接res * 10 + string ,因為string是str型,不是int型,index是int型

if string not in numlist:

return 0

return res * flag

把字串轉換成整數

題目 輸入乙個表示整數的字串,把該字串轉換成整數並輸出。例如輸入字串 345 則輸出整數345 分析 這道題儘管不是很難,學過c c 語言一般都能實現基本功能,但不同程式設計師就這道題寫出的 有很大區別,可以說這道題能夠很好地反應出程式設計師的思維和程式設計習慣,因此已經被包括微軟在內的多家公司用作...

把字串轉換成整數

題目 輸入乙個表示整數的字串,把該字串轉換成整數並輸出。例如輸入字串 345 則輸出整數 345。分析 這道題儘管不是很難,學過c c 語言一般都能實現基本功能,但不同程式設計師就這道題寫出的 有很大區別,可以說這道題能夠很好地反應出程式設計師的思維和程式設計習慣,因此已經被包括微軟在內的多家公司用...

把字串轉換成整數

題目 輸入乙個表示整數的字串,把該字串轉換成整數並輸出。例如輸入字串 345 則輸出整數 345。分析 這道題儘管不是很難,學過 c c 語言一般都能實現基本功能,但不同程式設計師就這道題寫出的 有很大區別,可以說這道題能夠很好地反應出程式設計師的思維和程式設計習慣,因此已經被包括微軟在內的多家公司...