Python exec 內置語句

描述

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: 0iter time: 1iter time: 2iter time: 3iter time: 4

實例 2

x = 10expr = """z = 30sum = x + y + zprint(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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章