Python3 exec 函數(shù)

2019-03-26 10:03 更新

Python3 exec 函數(shù)

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

描述

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

語法

以下是 exec 的語法:

exec(object[, globals[, locals]])

參數(shù)

  • object:必選參數(shù),表示需要被指定的Python代碼。它必須是字符串或code對象。如果object是一個字符串,該字符串會先被解析為一組Python語句,然后在執(zhí)行(除非發(fā)生語法錯誤)。如果object是一個code對象,那么它只是被簡單的執(zhí)行。
  • globals:可選參數(shù),表示全局命名空間(存放全局變量),如果被提供,則必須是一個字典對象。
  • locals:可選參數(shù),表示當前局部命名空間(存放局部變量),如果被提供,可以是任何映射對象。如果該參數(shù)被忽略,那么它將會取與globals相同的值。

返回值

exec 返回值永遠為 None。

實例

以下展示了使用 exec 的實例:

實例 1

>>>exec('print("Hello World")')
Hello World
# 單行語句字符串
>>> exec("print ('w3cschool.cn')")
w3cschool.cn
# 多行語句字符串
>>> 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

實例 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

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

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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號