Python判斷一個數是否為小數


一、判斷一個數是否為小數

1、有且僅有一個小數點

2、小數點的左邊可能為正數或負數

3、小數點的右邊為正數

 

二、實現代碼

def is_float(str): if str.count('.') == 1: #小數有且僅有一個小數點
        left = str.split('.')[0]  #小數點左邊(整數位,可為正或負)
        right = str.split('.')[1]  #小數點右邊(小數位,一定為正)
        lright = '' #取整數位的絕對值(排除掉負號)
        if str.count('-') == 1 and str[0] == '-': #如果整數位為負,則第一個元素一定是負號
            lright = left.split('-')[1] elif str.count('-') == 0: lright = left else: print('%s 不是小數'%str) if right.isdigit() and lright.isdigit(): #判斷整數位的絕對值和小數位是否全部為數字
            print('%s 是小數'%str) else: print('%s 不是小數'%str) else: print('%s 不是小數'%str)

 

查看結果:

30.112 是小數
-300.123 是小數
-.5 不是小數
2-1 不是小數
--11..22 不是小數
5. 不是小數
0 不是小數
abc.efg 不是小數

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM