Python中將字符串變成數(shù)字的5種方法示例
字符串和數(shù)字是Python中常見(jiàn)的數(shù)據(jù)類型,而且在撰寫(xiě)Python程序的時(shí)候,也經(jīng)常會(huì)遇到需要將字符串轉(zhuǎn)換為數(shù)字的情況,那么Python中如何將字符串變成數(shù)字?有多種方法可以使用,接下來(lái)一起來(lái)看看具體內(nèi)容介紹。
1、使用int()函數(shù)
int()函數(shù)可以將字符串轉(zhuǎn)換為整數(shù)類型。例如,將字符串"123"轉(zhuǎn)換為整數(shù)類型的代碼如下:
str_num = "123" num = int(str_num) print(num)
運(yùn)行結(jié)果為:
123
需要注意的是,如果字符串中包含非數(shù)字字符,則會(huì)拋出ValueError異常。例如,將字符串"123abc"轉(zhuǎn)換為整數(shù)類型的代碼如下:
str_num = "123abc" num = int(str_num) print(num)
運(yùn)行結(jié)果為:
ValueError: invalid literal for int() with base 10: '123abc'
2、使用float()函數(shù)
float()函數(shù)可以將字符串轉(zhuǎn)換為浮點(diǎn)數(shù)類型。例如,將字符串"3.14"轉(zhuǎn)換為浮點(diǎn)數(shù)類型的代碼如下:
str_num = "3.14" num = float(str_num) print(num)
運(yùn)行結(jié)果為:
3.14
需要注意的是,如果字符串中包含非數(shù)字字符,則會(huì)拋出ValueError異常。例如,將字符串"3.14abc"轉(zhuǎn)換為浮點(diǎn)數(shù)類型的代碼如下:
str_num = "3.14abc" num = float(str_num) print(num)
運(yùn)行結(jié)果為:
ValueError: could not convert string to float: '3.14abc'
3、使用eval()函數(shù)
eval()函數(shù)可以將字符串轉(zhuǎn)換為Python表達(dá)式并求值。如果字符串表示一個(gè)數(shù)字,eval()函數(shù)會(huì)將其轉(zhuǎn)換為數(shù)字類型。例如,字符串"123"轉(zhuǎn)換為數(shù)字類型的代碼如下:
str_num = "123" num = eval(str_num) print(num)
運(yùn)行結(jié)果為:
123
需要注意的是,如果字符串中包含非數(shù)字字符,則會(huì)拋出SyntaxError異常。例如,將字符串"123abc"轉(zhuǎn)換為數(shù)字類型的代碼如下:
str_num = "123abc" num = eval(str_num) print(num)
運(yùn)行結(jié)果為:
SyntaxError: invalid syntax
4、使用isdigit()函數(shù)
isdigit()函數(shù)可以檢查字符串中是否只包含數(shù)字字符。如果是,返回True;否則返回False。例如,判斷字符串"123"是否是數(shù)字的代碼如下:
str_num = "123"
if str_num.isdigit():
print("是數(shù)字")
else:
print("不是數(shù)字")運(yùn)行結(jié)果為:
是數(shù)字
需要注意的是,如果字符串中包含非數(shù)字字符,則返回False。例如,判斷字符串"123abc"是否是數(shù)字的代碼如下:
str_num = "123abc"
if str_num.isdigit():
print("是數(shù)字")
else:
print("不是數(shù)字")運(yùn)行結(jié)果為:
不是數(shù)字
5、使用正則表達(dá)式提取字符串中的數(shù)字
正則表達(dá)式可以用來(lái)匹配特定的字符串格式。可以使用正則表達(dá)式提取字符串中的數(shù)字。例如,從字符串"abc123def456"中提取數(shù)字的代碼如下:
import re str_num = "abc123def456" pattern = re.compile(r'\d+') nums = pattern.findall(str_num) print(nums)
運(yùn)行結(jié)果為:
['123', '456']
需要注意的是,正則表達(dá)式中的"\d"表示數(shù)字字符,而"+"表示匹配至少一個(gè)數(shù)字字符。如果要匹配浮點(diǎn)數(shù),則可以使用"\d+\.\d+"作為正則表達(dá)式。
總結(jié)
到此這篇關(guān)于Python中將字符串變成數(shù)字的5種方法的文章就介紹到這了,更多相關(guān)Python字符串變數(shù)字內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于numpy中eye和identity的區(qū)別詳解
今天小編就為大家分享一篇關(guān)于numpy中eye和identity的區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11
Python數(shù)據(jù)分析的八種處理缺失值方法詳解
缺失值可能是數(shù)據(jù)科學(xué)中最不受歡迎的值,然而,它們總是在身邊。忽略缺失值也是不合理的,因此我們需要找到有效且適當(dāng)?shù)靥幚硭鼈兊姆椒?/div> 2021-11-11
python 簡(jiǎn)單照相機(jī)調(diào)用系統(tǒng)攝像頭實(shí)現(xiàn)方法 pygame
今天小編就為大家分享一篇python 簡(jiǎn)單照相機(jī)調(diào)用系統(tǒng)攝像頭實(shí)現(xiàn)方法 pygame,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
python編程開(kāi)發(fā)之textwrap文本樣式處理技巧
這篇文章主要介紹了python編程開(kāi)發(fā)之textwrap文本樣式處理技巧,實(shí)例分析了Python中textwrap的常用方法與處理文本樣式的相關(guān)使用技巧,需要的朋友可以參考下2015-11-11
Python+pytorch實(shí)現(xiàn)天氣識(shí)別
這篇文章主要為大家詳細(xì)介紹了如何利用Python+pytorch實(shí)現(xiàn)天氣識(shí)別功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下2022-10-10
Python 由字符串函數(shù)名得到對(duì)應(yīng)的函數(shù)(實(shí)例講解)
下面小編就為大家?guī)?lái)一篇Python 由字符串函數(shù)名得到對(duì)應(yīng)的函數(shù)(實(shí)例講解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08最新評(píng)論

