python中eval與int的區(qū)別淺析
python中eval和int的區(qū)別是什么?下面給大家介紹一下:
1.eval()函數(shù)
eval(<字符串>)能夠以Python表達式的方式解析并執(zhí)行字符串,并將返回結(jié)果輸出。eval()函數(shù)將去掉字符串的兩個引號,將其解釋為一個變量。
作用:
a. 處理數(shù)字
單引號,雙引號,eval()函數(shù)都將其解釋為int類型;三引號則解釋為str類型。
b.處理字符串類型的字符串
對于eval()括號中的的字符串(非數(shù)字),如果字符串帶的是單引號或者是雙引號都會引起NameError,這是因為eval()函數(shù)在處理字符串時會去掉其兩個引號。正確應(yīng)該使用一個單引號包含一個雙引號組成的三引號來包含字符串。
2.int()函數(shù)
int()函數(shù)可以將一個數(shù)轉(zhuǎn)化為整數(shù)
>>> int('12',16) 18
這里有兩個地方要注意:
1)12要以字符串的形式進行輸入,如果是帶參數(shù)base的話
2)這里并不是將12轉(zhuǎn)換為16進制的數(shù),而是說12就是一個16進制的數(shù),int()函數(shù)將其用十進制數(shù)表示,如下
>>> int('0xa',16) 10 >>> int('10',8) 8
Python中的eval方法接受一個字符串參數(shù),并且把字符串里面的內(nèi)容當成Python代碼來執(zhí)行;
eval的缺點是執(zhí)行速度慢,并且會有安全風險
總結(jié)
以上就是python中eval和int的區(qū)別的詳細內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。
相關(guān)文章
python hbase讀取數(shù)據(jù)發(fā)送kafka的方法
今天小編就為大家分享一篇python hbase讀取數(shù)據(jù)發(fā)送kafka的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12Python自動化測試Eclipse+Pydev 搭建開發(fā)環(huán)境
本文主要介紹python自動化測試環(huán)境搭建,這里對Eclipse+Pydev 搭建開發(fā)環(huán)境做了圖文詳解,有需要的小伙伴可以參考下2016-08-08Python?Apschedule定時任務(wù)框架的用法詳解
apschedule是一個用python寫的定時處理框架,這篇文章主要為大家詳細介紹了Apschedule定時任務(wù)框架的用法,感興趣的小伙伴可以跟隨小編一起了解一下2023-06-06Python3實現(xiàn)發(fā)送QQ郵件功能(文本)
這篇文章主要為大家詳細介紹了Python3實現(xiàn)發(fā)送QQ郵件功能,文本方面,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12Python學(xué)習(xí)之字符串函數(shù)使用詳解
Python的友好在于提供了非常好強大的功能函數(shù)模塊,對于字符串的使用,同樣提供許多簡單便捷的字符串函數(shù)。Python 字符串自帶了很多有用的函數(shù),快來跟隨小編學(xué)習(xí)一下這些函數(shù)的應(yīng)用詳解吧2021-12-12