您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關Python Library具有的功能是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
直接運行代碼字符串也是動態語言的一個重要特征。雖然在 .NET/C# 里也可通過 CodeDom 實現類似的功能,但遠沒 Python 這么方便自由。
>>> code = """ def test(s): print "test:", s a = 123 """ >>> exec code >>> a 123 >>> test("abc") test: abc
內置函數里還有 eval() 和 execfile() 都是用來做類似事情的。exec 關鍵字執行多行代碼片段,eval() 函數通常用來執行一條包含返回值的表達式,而 execfile 自然是用來執行源碼文件了。
>>> a = 10 >>> x = eval("a + 3") >>> x 13
eval() 和 execfile() 都有 "globals, locals" 參數,用于傳遞環境變量,默認或顯式設置為 None 時都直接使用 globals() 和 locals() 獲取當前作用域的數據。
>>> x = eval("a + b", {}, {})
傳遞空值,使其無法獲取本地信息
Traceback (most recent call last): File "<pyshell#21>", line 1, in <module> x = eval("a + b", {}, {}) File "<string>", line 1, in <module> NameError: name 'a' is not defined >>> x = eval("a + b", {}, { "a":123, "b":2})
顯式傳遞環境信息
>>> x 125
以上就是Python Library具有的功能是什么,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。