Python中eval如何使用?其作用是什麼?
eval是Python中比較常用的函式之一,該函式可以計算字串中有效的表示式,並返回結果,還可以將字串轉成相應的物件,還可以將利用反引號轉換的字串再反轉回物件,本篇文章為大家詳細的介紹一下Python中eval的基本用法!
Python中eval的用法:
Python eval()函式的功能:將字串str當成有效的表示式來求值並返回計算結果。
語法:
eval(source[,globals[,locals]]) -> value
引數:
source:一個Python表示式或函式compile()返回的程式碼物件。
blobals:可選。必須是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()
num2
num1 4
num2 2
num3 4
解析:num2因為有globals所以是全域性變數,執行後結果為4;num3既有globals又有locals,僅在此情況下,優先採用locals的值,故計算結果是2。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2943738/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python中eval函式是什麼?如何使用?Python函式
- Linux lsof命令如何使用?其作用是什麼?Linux
- Python中/與//的區別是什麼?其如何使用?Python
- Python 為什麼說 Eval 要慎用?使用 Eval 帶來的潛在風險?什麼情況下使用 Eval?Python
- Linux中mesg命令作用是什麼?如何使用?Linux
- Linux系統中tmp指什麼檔案?其作用是什麼?Linux
- Linux中less命令如何使用?主要作用是什麼?Linux
- Python中eval函式的表示式如何使用Python函式
- python反向引用是什麼?Python
- python的引用是什麼Python
- 什麼是eval()?eval是用來幹什麼的?
- Linux netstat命令作用是什麼?如何使用?Linux
- Python中\t代表什麼?如何使用?Python
- Python迴圈引用是什麼?如何避免迴圈引用?Python
- 為什麼不建議使用eval和with?
- MySql中delimiter的作用是什麼?MySqlMIT
- Linux中gpgcheck是什麼意思?作用是什麼?LinuxGC
- Linux裡面sort命令的作用是什麼?如何使用?Linux
- js中逗號(,)的作用是什麼JS
- Linux裡面set-e命令作用是什麼?如何使用?Linux
- python中的eval用法Python
- Linux中opt是什麼意思?其主要作用是什麼?Linux
- Python中find函式是什麼?其作用有哪些?Python函式
- 【乾貨】Linux中presto作用是什麼?LinuxREST
- 檢視中with check option的作用是什麼?
- Python中eval與exec的使用及區別Python
- Linux系統中掛載是什麼意思?作用是什麼?Linux
- setnx作用是什麼 redisRedis
- Linux中主機名的作用是什麼?如何配置主機名?Linux
- 在Linux中,日誌檔案作用是什麼及如何檢視?Linux
- DNS是什麼?DNS在網路通訊中的作用是什麼?DNS
- js程式碼中的"use strict"的作用是什麼JS
- 什麼是代理伺服器及作用?如何使用其上網?伺服器
- 精益IT的作用是什麼?
- text/plain的作用是什麼AI
- jQuey return false作用是什麼False
- MySql delimiter的作用是什麼MySqlMIT
- kubelet的功能、作用是什麼