竹内纱里奈和大战黑人_欧美成人黄色小视频_91福利影视_欧美在线观看视频网站_h色网站免费观看_97综合

極客小將

您現(xiàn)在的位置是:首頁 » python編程資訊

資訊內(nèi)容

python如何判斷字符串是否為整數(shù)

極客小將2021-03-03-
簡介python判斷字符串是否為整數(shù)的方法:首先可以根據(jù)字符串的第一個(gè)字符確定整數(shù)的正負(fù);然后對(duì)字符串從右向左遍歷,例如111,可以看成【11*10+1】,而11又可以看成【1*10+1】。本教程操作環(huán)境:windows7系統(tǒng)、python3.9版,DELLG3電腦。python判斷字符串是否為整數(shù)的方

python判斷字符串是否為整數(shù)的方法:首先可以根據(jù)字符串的第一個(gè)字符確定整數(shù)的正負(fù);然后對(duì)字符串從右向左遍歷,例如111,可以看成【11*10+1】,而11又可以看成【1*10+1】。F2L少兒編程網(wǎng)-https://www.pxcodes.com

F2L少兒編程網(wǎng)-https://www.pxcodes.com

本教程操作環(huán)境:windows7系統(tǒng)、python3.9版,DELL G3電腦。F2L少兒編程網(wǎng)-https://www.pxcodes.com

python判斷字符串是否為整數(shù)的方法:F2L少兒編程網(wǎng)-https://www.pxcodes.com

方法一:遞歸法F2L少兒編程網(wǎng)-https://www.pxcodes.com

對(duì)于整數(shù)而言,例如111,可以看成11*10+1,而11又可以看成1*10+1。而-111可以看成(-11)*10-1,-11可以看成(-1)*10-1.根據(jù)這個(gè)特點(diǎn)可以采用遞歸的方法求解,可以先根據(jù)字符串的第一個(gè)字符確定整數(shù)的正負(fù),接著對(duì)字符串從右向左遍歷.F2L少兒編程網(wǎng)-https://www.pxcodes.com

class Test: def __init__(self): self.flag = None def getFlag(self): return self.flag # 判斷c是否是數(shù)字,如果是返回?cái)?shù)字,且設(shè)置flag=True,否則返回False def isNumber(self, c): return c >= '0' and c <= '9' # 判斷str是否是數(shù)字 def strtoint(self, strs, length): if length > 1: if not self.isNumber(list(strs)[length - 1]): # 不是數(shù)字 print("不是數(shù)字") self.flag = False return -1 if list(strs)[0] == '-': return self.strtoint(strs, length - 1) * 10 - (ord(list[length - 1]) - ord('0')) else: return self.strtoint(strs, length - 1) * 10 + ord(list(strs)[length - 1]) - ord('0') else: if list(strs)[0] == '-': return 0 else: if not self.isNumber(list(strs)[0]): print("不是數(shù)字") self.flag = False return -1 return ord(list(strs)[0]) - ord('0') def strToint(self, s): self.flag = True if s == None or len(s) <= 0 or (list(s)[0] == '-' and len(s) == 1): print("不是數(shù)字") self.flag = False return -1 if list(s)[0] == '+': return self.strToint(s[1:len(s)], len(s) - 1) else: return self.strToint(s, len(s))

方法二:非遞歸法F2L少兒編程網(wǎng)-https://www.pxcodes.com

首先通過一個(gè)字符的值確定整數(shù)的正負(fù)性,然后去掉符號(hào)位,把后面的字符串當(dāng)做正數(shù)來處理,處理完成后再根據(jù)正負(fù)性返回正確的結(jié)果。實(shí)現(xiàn)方法為從左向右遍歷字符串計(jì)算整數(shù)的值,以“123”為例,遍歷到'2'的時(shí)候結(jié)果為1*10+2=12,遍歷到‘3’的時(shí)候結(jié)果為12*10+3=123。F2L少兒編程網(wǎng)-https://www.pxcodes.com

class Test: def __init__(self): self.flag = None def getFlag(self): return self.flag # 判斷c是否是數(shù)字,如果是返回True,否則返回False def isNumber(self, c): return c >= "0" and c <= "9" def strToint(self, strs): if strs == None: self.flag = False print("不是數(shù)字") return -1 self.flag = True res = 0 i = 0 minus = False # 是否是負(fù)數(shù) if list(strs)[i] == '-': # 結(jié)果是負(fù)數(shù) minus = True i += 1 if list(strs)[i] == '+': # 結(jié)果是正數(shù) i += 1 while i < len(strs): if self.isNumber(list(strs)[i]): res = res * 10 + ord(list(strs)[i]) - ord('0') else: self.flag = False print("不是數(shù)字") return -1 i += 1 return -res if minus else res if __name__ == "__main__": t = Test() s = "-543" print(t.strToint(s)) s = "543" print(t.strToint(s)) s = "+543" print(t.strToint(s)) s = "++43" result = t.strToint(s) if t.getFlag(): print(result)

相關(guān)免費(fèi)學(xué)習(xí)推薦:python視頻教程F2L少兒編程網(wǎng)-https://www.pxcodes.com

以上就是python如何判斷字符串是否為整數(shù)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注少兒編程網(wǎng)其它相關(guān)文章!F2L少兒編程網(wǎng)-https://www.pxcodes.com

預(yù)約試聽課

已有385人預(yù)約都是免費(fèi)的,你也試試吧...

主站蜘蛛池模板: 国产日韩精品视频一区二区三区 | 亚洲成人精品在线 | 欧美一级欧美一级在线播放 | 日韩欧美亚洲国产精品字幕久久久 | 欧美久久一区二区 | 久久国产精品99久久久久久牛牛 | 欧美专区亚洲专区 | 欧美午夜精品久久久久免费视 | 一本色道久久88综合亚洲精品ⅰ | 亚洲视频国产 | 亚洲精品成人av | 好吊色综合高清 | 韩国日本美国免费毛片 | 亚洲激情一区 | 国内在线视频 | 国产精品69久久久久水密桃 | 成人久久久久 | 精品成人 | 欧美一区久久 | 在线不卡二区 | 欧美一二区 | 日韩精品一二三 | 精品国产自在精品国产浪潮 | 久久国产欧美一区二区免费 | 亚洲午夜免费视频 | 国产精品1区2区3区 国内自拍中文字幕 | 99福利视频 | 玖玖玖国产精品 | 中文无码久久精品 | 欧美精品久久久久a | 午夜精品一区二区三区视频免费看 | 成人一区二区三区四区 | 色一情一乱一伦一区二区三区 | 欧美精品久久久久a | 视频一区二区国产 | 国产在线免 | 五月婷婷视频在线观看 | 国产伦精品一区 | 国产91亚洲精品 | 亚洲动漫精品 | 欧美精品综合 |