判斷一個數是否是小數


判斷一個數是否為小數

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)

 


免責聲明!

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



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