成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

基于python實現判斷字符串是否數字算法

瀏覽:14日期:2022-07-17 18:48:32

算法1

1、分小數和整數:如果小數點個數為1,則可能是小數。如小數點個數為0,則可能是整數。小數點個數非0也非1,那么就不是數字。

2、如果是小數,再分正數和負數的情況:如果首位為負號,則可能是負小數。如果首位不為負號,則可能是正小數。

1)如果首位為負號,則去掉負號。

2)如果首位不為負號;或者是首位為負號,去掉首位負號之后。則判斷是否為是否為“.”,如果是,那么就不是數字,如果不是,就去掉'.'

3)再判斷剩下字符是否都在'0123456789'內,如果不都在則不是數字,否則就是數字

3、如果是整數,也同樣分正數和負數的情況。如果首位為負號,則可能是負整數,如果首位不為負號,則可能是正整數。

1)如果首位誒負號,則去掉負號。

2)如果首位不為負號;或者是首位為負號,去掉首位負號之后。判斷剩下字符是否都在'0123456789'內,如果不都在則不是數字,否則就是數字

基于python實現判斷字符串是否數字算法

#encoding=utf-8def is_number(s): if s.count('.')==1: #小數的判斷 if s[0]=='-': s=s[1:] if s[0]=='.': return False s=s.replace('.','') for i in s: if i not in '0123456789':return False else:#這個else與for對應的 return True elif s.count('.')==0: #整數的判斷 if s[0]=='-': s=s[1:] for i in s: if i not in '0123456789':return False else: return True else: return Falseprint(is_number('1334345345'))print(is_number('1.12344565'))print(is_number('-14344343'))print(is_number('-1.123456'))print('**********************')print(is_number('abc'))print(is_number('1.32.2'))print(is_number('.2344'))print(is_number('1234a'))print(is_number('--1.1'))print(is_number('--1abc'))

基于python實現判斷字符串是否數字算法

算法2

1、判斷首位是否是負號或者數字,如果不是,則不是數字。如果是,則可能是數字。

2、判斷'.'和'-'的個數是否都小于等于1,如果不是,則不是數字,如果是,則可能是數字。

3、去掉'.'和'-' 。

4、判斷剩下的字符是否都在'0123456789'內,如果不都在則不是數字,否則就是數字

基于python實現判斷字符串是否數字算法

#encoding=utf-8def is_number(s): if s[0]=='-' or s[0] in '0123456789': if s.count('.')<=1 and s.count('-')<=1: s=s.replace('-','').replace('.','') #print (s) for i in s:if i not in '0123456789': return False else:#這個else與for對應return True else: return False else: return Falseprint(is_number('1334345345'))print(is_number('1.12344565'))print(is_number('-14344343'))print(is_number('-1.123456'))print('**********************')print(is_number('abc'))print(is_number('1.32.2'))print(is_number('.2344'))print(is_number('1234a'))print(is_number('--1.1'))print(is_number('--1abc'))

基于python實現判斷字符串是否數字算法

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章: