python中eval的用法:將字串str當成有效的表達式來求值並傳回計算結果,語法為【eval(source[, globals[, locals]]) -> 值】。
本教學操作環境:windows7系統、python3.9版,DELL G3電腦,此方法適用於所有品牌電腦。
python中eval的用法:
python eval() 函數的函數:將字串str當成有效的表達式來求值並傳回計算結果。
語法:
eval(source[, globals[, locals]]) -> value
參數:
#source
:一個Python表達式或函數compile()傳回的程式碼對象
globals
:可選。必須是dictionary
locals
:可選。任意map物件
如果提供了globals參數,那麼它必須是dictionary類型;如果提供了locals參數,那麼它可以是任意的map物件。
python的全域名字空間儲存在一個叫做globals()
的dict物件中;局部名字空間儲存在一個叫做locals()
的dict物件中。我們可以用print (locals())來查看該函數體內的所有變數名稱和變數值。
x = 1 y = 1 num = eval("x+y") print('num',num) def g(): x = 2 y = 2 num1 = eval("x+y") print('num1',num1) num2 =eval("x+y",globals()) print('num2',num2) num3 = eval("x+y",globals(),locals()) print('num3',num3) g() num 2 num1 4 num2 2 num3 4
解析:num2 因為有globals所以是全域變量,執行後結果為4;num3 既有globals 又有locals,僅在此情況下,優先採用locals的值,故計算結果是2
#相關免費學習推薦:python影片教學
以上是python中eval的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!