python字符串转化为数字-python 中判断字符串能否转换为数字类型
方法一: isdigit() 不可識別漢字 小數(shù)類型
str1 = "1"
str2 = "2.1"
str3 = "三"
str4 = "3.3.3.3"
print(str1.isdigit())
print(str2.isdigit())
print(str3.isdigit())
print(str4.isdigit())
結(jié)果:
True
False
False
False
方法二: isdecimal() 沒有與方法一發(fā)現(xiàn)區(qū)別
str1 = "1"
str2 = "2.1"
str3 = "三"
str4 = "3.3.3.3"
print(str1.isdecimal())
print(str2.isdecimal())
print(str3.isdecimal())
print(str4.isdecimal())
結(jié)果:
True
False
False
False
方法三: isnumeric() 可以識別漢字
str1 = "1"
str2 = "2.1"
str3 = "三"
str4 = "3.3.3.3"
print(str1.isnumeric())
print(str2.isnumeric())
print(str3.isnumeric())
print(str4.isnumeric())
結(jié)果:
True
False
True
False
唯獨沒有找到可以識別小數(shù)的.
識別小數(shù)使用try 來判斷
try:
float(str2)
print("is True")
except:
print(" is False ")
try:
float(str1)
print("is True")
except:
print(" is False ")
運行結(jié)果:
is True
is True
由此可見. float對整數(shù)和小數(shù)都有效. 那么為了判斷字符串到底能不能轉(zhuǎn)換為數(shù)字.我們加一個方法稍稍改動一下就可以了:
def is_number(target_str):
try:
float(target_str)
return True
except:
pass
if target_str.isnumeric():
return True
return False
print(is_number(str1))
print(is_number(str2))
print(is_number(str3))
print(is_number(str4))
這樣就OK拉. 快去試試吧
總結(jié)
以上是生活随笔為你收集整理的python字符串转化为数字-python 中判断字符串能否转换为数字类型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: exe打包工具哪个最好_一键分发工具哪个
- 下一篇: pca主成分分析用matlab实现,PC