s = input("请输入:") lst = s.split(".") if len(lst) == 2: right = lst[1] left = lst[0] if len(left) >= 2 and len(right) > 0: #例如 5. 不是小数 -.5也不是小数 left1 = left[1:] #去掉小数点左边字符串的第一位负号 判断剩下的部分是否为数字 if right.isdigit() and left1.isdigit(): #isdigit() 方法检测字符串是否只由数字组成 print("是小数") else: print("不是小数") elif 1 <= len(left) < 2 and len(right) > 0: #例如 5. 不是小数 if lst[0].isdigit(): print("是小数") else: print("不是小数") else: print("不是小数") #例如 5. 不是小数 else: print("输入有误不是小数")