1. 程式人生 > >Python3 exec 函數

Python3 exec 函數

htm ted 需要 src python 分享 bsp lob img

Python3 exec 函數

技術分享圖片 Python3 內置函數


描述

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

語法

以下是 exec 的語法:

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

參數

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

返回值

exec 返回值永遠為 None。


實例

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

實例 1

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

輸出結果:

60
33
34

Python3 exec 函數