新聞中心
趁著前幾篇講過int()函數(shù)大家還有印象,小編簡(jiǎn)單帶大家回顧后,就講講int與eval函數(shù)的區(qū)別。

成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比中站網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式中站網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋中站地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。
1.eval()函數(shù)
eval(<字符串>)能夠以python表達(dá)式的方式解析并執(zhí)行字符串,并將返回結(jié)果輸出。eval()函數(shù)將去掉字符串的兩個(gè)引號(hào),將其解釋為一個(gè)變量。
作用:
a. 處理數(shù)字
單引號(hào),雙引號(hào),eval()函數(shù)都將其解釋為int類型;三引號(hào)則解釋為str類型。
b.處理字符串類型的字符串
對(duì)于eval()括號(hào)中的的字符串(非數(shù)字),如果字符串帶的是單引號(hào)或者是雙引號(hào)都會(huì)引起NameError,這是因?yàn)閑val()函數(shù)在處理字符串時(shí)會(huì)去掉其兩個(gè)引號(hào)。正確應(yīng)該使用一個(gè)單引號(hào)包含一個(gè)雙引號(hào)組成的三引號(hào)來包含字符串。
2.int()函數(shù)
int()函數(shù)可以將一個(gè)數(shù)轉(zhuǎn)化為整數(shù)。
>>> int('12',16) 18
這里有兩個(gè)地方要注意:
1)12要以字符串的形式進(jìn)行輸入,如果是帶參數(shù)base的話
2)這里并不是將12轉(zhuǎn)換為16進(jìn)制的數(shù),而是說12就是一個(gè)16進(jìn)制的數(shù),int()函數(shù)將其用十進(jìn)制數(shù)表示,如下
>>> int('0xa',16) 10 >>> int('10',8) 8
Python中的eval方法接受一個(gè)字符串參數(shù),并且把字符串里面的內(nèi)容當(dāng)成Python代碼來執(zhí)行;
eval的缺點(diǎn)是執(zhí)行速度慢,并且會(huì)有安全風(fēng)險(xiǎn)。
對(duì)比后不難發(fā)現(xiàn),使用eval()函數(shù)有諸多問題要注意,不然容易出現(xiàn)問題。更多Python學(xué)習(xí)推薦:Python學(xué)習(xí)網(wǎng)教學(xué)中心。
(推薦操作系統(tǒng):windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。)
文章標(biāo)題:創(chuàng)新互聯(lián)Python教程:python之int與eval函數(shù)的區(qū)別
當(dāng)前URL:http://www.5511xx.com/article/dpspipg.html


咨詢
建站咨詢
