1.當num確定為數字后
num=123.4
print(isinstance(num,float))#判斷是否為浮點數 print(isinstance(num,int))#判斷是否為整數
2.當num為字符串是時
num=input("輸入一個數字:").strip() print(type(eval(num)))#輸出字符串類型 #當num="123",輸出int #當num="1.234",輸出float
當num輸入字母中文會報錯
3.
num=input("input:") if num.replace(".",'').isdigit(): if num.count(".")==0: print('int') elif num.count(".")==1: print('float') else print("即不是int類型,也不是float類型")
這個方式將"."+"數字"和"數字"+"."也判定為浮點數.
因為python將這兩種默認為浮點數
如
print(.9) print(3.)
結果為0.9和3.0
如果要求更嚴格,將這兩種情況排除,可以再加一個判斷
num.strip(".")==num
字符串首尾沒有小數點