Python中將字符串變成數(shù)字的5種方法示例
字符串和數(shù)字是Python中常見(jiàn)的數(shù)據(jù)類型,而且在撰寫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)匹配特定的字符串格式??梢允褂谜齽t表達(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)文章
Python腳本打包成可執(zhí)行文件過(guò)程解析
這篇文章主要介紹了Python腳本打包成可執(zhí)行文件過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10Windows安裝Anaconda并且配置國(guó)內(nèi)鏡像的詳細(xì)教程
我們?cè)趯W(xué)習(xí) Python 的時(shí)候需要不同的 Python 版本,關(guān)系到電腦環(huán)境變量配置換來(lái)?yè)Q去很是麻煩,所以這個(gè)時(shí)候我們需要一個(gè)虛擬的 Python 環(huán)境變量,這篇文章主要介紹了Windows安裝Anaconda并且配置國(guó)內(nèi)鏡像教程,需要的朋友可以參考下2023-01-01Python單鏈表簡(jiǎn)單實(shí)現(xiàn)代碼
這篇文章主要介紹了Python單鏈表簡(jiǎn)單實(shí)現(xiàn)代碼,結(jié)合實(shí)例形式分析了Python單鏈表的具體定義與功能實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-04-04Python實(shí)現(xiàn)迷宮自動(dòng)尋路實(shí)例
大家好,本篇文章主要講的是Python實(shí)現(xiàn)迷宮自動(dòng)尋路實(shí)例,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2022-02-02關(guān)于python中不同函數(shù)讀取圖片格式的區(qū)別淺析
這篇文章主要給大家介紹了關(guān)于python中不同函數(shù)讀取圖片格式的區(qū)別,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-03-03Python Sanic框架實(shí)現(xiàn)文件上傳功能
Sanic是一個(gè)Python 3.5+的異步Web框架,它的設(shè)計(jì)理念與Flask相似,但采用了更高效的異步I/O處理,在處理文件上傳時(shí),Sanic同樣提供了方便、高效的方法,本教程將結(jié)合實(shí)際案例,詳細(xì)介紹如何在Sanic框架中實(shí)現(xiàn)文件上傳的功能,需要的朋友可以參考下2024-08-08使用python找出list列表中相同元素(指定元素)的所有索引
這篇文章主要給大家介紹了關(guān)于使用python找出list列表中相同元素(指定元素)的所有索引,在平時(shí)開(kāi)發(fā)過(guò)程中經(jīng)常遇到需要在數(shù)據(jù)中獲取特定的元素索引的信息,需要的朋友可以參考下2023-08-08