Python内置函数——eval、exec、compile
生活随笔
收集整理的這篇文章主要介紹了
Python内置函数——eval、exec、compile
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
eval() 將字符串類型的代碼執(zhí)行并返回結(jié)果
print(eval('1+2+3+4'))exec()將自字符串類型的代碼執(zhí)行
print(exec("1+2+3+4")) exec("print('hello,world')")指定global參數(shù)
''' 遇到問題沒人解答?小編創(chuàng)建了一個(gè)Python學(xué)習(xí)交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯(cuò)的視頻學(xué)習(xí)教程和PDF電子書! ''' code = ''' import os print(os.path.abspath('.')) ''' code = ''' print(123) a = 20 print(a) ''' a = 10 exec(code,{'print':print},) print(a)compile 將字符串類型的代碼編譯。代碼對(duì)象能夠通過exec語句來執(zhí)行或者eval()進(jìn)行求值。
參數(shù)說明:
參數(shù)source:字符串或者AST(Abstract Syntax Trees)對(duì)象。即需要?jiǎng)討B(tài)執(zhí)行的代碼段。
參數(shù) filename:代碼文件名稱,如果不是從文件讀取代碼則傳遞一些可辨認(rèn)的值。當(dāng)傳入了source參數(shù)時(shí),filename參數(shù)傳入空字符即可。
參數(shù)model:指定編譯代碼的種類,可以指定為‘exec’,’eval’,’single’。當(dāng)source中包含流程語句時(shí),model應(yīng)指定為‘exec’;當(dāng)source中只包含一個(gè)簡(jiǎn)單的求值表達(dá)式,model應(yīng)指定為‘eval’;當(dāng)source中包含了交互式命令語句,model應(yīng)指定為’single’。
總結(jié)
以上是生活随笔為你收集整理的Python内置函数——eval、exec、compile的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python实现提取jira bug列表
- 下一篇: python各种推导式详解