新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
PythonLibrary在實際操作中具有十分強大的功能
以下的文章是通過Python Library: Exec & Compile的相關(guān)實際操作代碼的介紹來介紹Python Library在實際操作的相關(guān)步驟,以下是文章內(nèi)容的具體介紹,希望你在瀏覽完下面的文章會有所收獲。

直接運行代碼字符串也是動態(tài)語言的一個重要特征。雖然在 .NET/C# 里也可通過 CodeDom 實現(xiàn)類似的功能,但遠沒 Python 這么方便自由。
- >>> code = """
- def test(s):
- print "test:", s
- a = 123
- """
- >>> exec code
- >>> a
- 123
- >>> test("abc")
- test: abc
內(nèi)置函數(shù)里還有 eval() 和 execfile() 都是用來做類似事情的。exec 關(guān)鍵字執(zhí)行多行代碼片段,eval() 函數(shù)通常用來執(zhí)行一條包含返回值的表達式,而 execfile 自然是用來執(zhí)行源碼文件了。
- >>> a = 10
- >>> x = eval("a + 3")
- >>> x
- 13
eval() 和 execfile() 都有 "globals, locals" 參數(shù),用于傳遞環(huán)境變量,默認或顯式設(shè)置為 None 時都直接使用 globals() 和 locals() 獲取當前作用域的數(shù)據(jù)。
- >>> x = eval("a + b", {}, {})
傳遞空值,使其無法獲取本地信息
- Traceback (most recent call last):
- File "
", line 1, in - x = eval("a + b", {}, {})
- File "
", line 1, in - NameError: name 'a' is not defined
- >>> x = eval("a + b", {}, { "a":123, "b":2})
顯式傳遞環(huán)境信息
- >>> x
- 125
以上文章的內(nèi)容是對Python Library的實際相關(guān)應(yīng)用操作過程中操作的部分介紹。
【編輯推薦】
- python開發(fā)環(huán)境中IDLE的相關(guān)介紹
- 對Python編程的實際操作方案的詳細介紹
- Python編程語言比perl在實際應(yīng)用中優(yōu)點所在
- Python語法檢查引用PyLint配置的具體方法
- Python代碼在實際應(yīng)用中的方案簡介
標題名稱:PythonLibrary在實際操作中具有十分強大的功能
轉(zhuǎn)載來于:http://fisionsoft.com.cn/article/dhcggph.html


咨詢
建站咨詢
