Python exec 內(nèi)置語(yǔ)句

2019-03-16 11:59 更新

Python exec 內(nèi)置語(yǔ)句

Python 內(nèi)置函數(shù) Python 內(nèi)置函數(shù)

描述

Python exec 執(zhí)行儲(chǔ)存在字符串或文件中的Python語(yǔ)句,相比于 eval,exec可以執(zhí)行更復(fù)雜的 Python 代碼。

需要說(shuō)明的是在 Python2 中exec不是函數(shù),而是一個(gè)內(nèi)置語(yǔ)句(statement),但是Python 2中有一個(gè) execfile() 函數(shù)??梢岳斫鉃?Python 3 把 exec 這個(gè) statement 和 execfile() 函數(shù)的功能夠整合到一個(gè)新的 exec() 函數(shù)中去了。

語(yǔ)法

以下是 exec 的語(yǔ)法:

exec obj

參數(shù)

  • obj:要執(zhí)行的表達(dá)式。

返回值

exec 返回值永遠(yuǎn)為 None。

實(shí)例

以下展示了使用 exec 的實(shí)例:

實(shí)例 1

>>>exec 'print "Hello World"'
Hello World
# 單行語(yǔ)句字符串
>>> exec "print 'w3cschool.cn'"

w3cschool.cn

# 多行語(yǔ)句字符串 >>> exec """for i in range(5): ... print "iter time: %d" % i ... """ iter time: 0 iter time: 1 iter time: 2 iter time: 3 iter time: 4

實(shí)例 2

x = 10
expr = """
z = 30
sum = x + y + z
print(sum)
"""
def func():
y = 20
exec(expr)
exec(expr, {'x': 1, 'y': 2})
exec(expr, {'x': 1, 'y': 2}, {'y': 3, 'z': 4})
func()

輸出結(jié)果:

60
33
34

Python 內(nèi)置函數(shù) Python 內(nèi)置函數(shù)


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)