3 回答

TA貢獻(xiàn)1998條經(jīng)驗(yàn) 獲得超6個(gè)贊
eval函數(shù)將字符串當(dāng)成有效Python表達(dá)式來(lái)求值,并返回計(jì)算結(jié)果
123 | x = 1 eval ( 'x+1' ) eval ( 'x==1' ) |
與之對(duì)應(yīng)的repr函數(shù),它能夠?qū)ython的變量和表達(dá)式轉(zhuǎn)換為字符串表示
12 | repr (x = = 1 ) repr (x + 1 ) |

TA貢獻(xiàn)1813條經(jīng)驗(yàn) 獲得超2個(gè)贊
在python中,eval()是評(píng)估函數(shù),用處是去掉最外層引號(hào),然后進(jìn)一步處理
解釋:python中 input()默認(rèn)錄入的是字符串類型
如果用戶輸入了123,其實(shí)讀取的是字符串"123"
這時(shí)候需要eval(input())來(lái)獲取整數(shù)123,才能進(jìn)行進(jìn)一步的計(jì)算
之所以說(shuō)eval()用處是去掉最外層引號(hào)是因?yàn)?
舉例說(shuō)明吧,
12 | eval ( " '你好' " ) # 會(huì)輸出字符串"你好" eval ( "print(" WOW ")" ) # 經(jīng)過(guò)評(píng)估函數(shù)處理之后 會(huì)輸出字符串"WOW" |

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊
eval參數(shù)是一個(gè)字符串, 可以把這個(gè)字符串當(dāng)成表達(dá)式來(lái)求值,
比如'x+1'就是一個(gè)表達(dá)式字符串
>>> x = 1
>>> print eval('x+1')
2
添加回答
舉報(bào)