📜  Python exec()(1)

📅  最后修改于: 2023-12-03 14:45:57.869000             🧑  作者: Mango

Python exec()函数介绍

1. 概述

exec() 是一个内置函数,用于在 Python 程序中执行动态创建的代码。它支持执行代码字符串、代码对象和代码文件。使用 exec() 函数可以实现动态执行 Python 代码的功能,灵活性非常高。

2. 语法

exec() 函数的语法如下:

exec(object[, globals[, locals]])
  • object(必需):表示要执行的代码字符串、代码对象或者代码文件。
  • globals(可选):表示全局命名空间(存储全局变量),如果未指定,将使用当前全局命名空间。
  • locals(可选):表示局部命名空间(存储局部变量),如果未指定,将使用 globals() 函数返回的全局命名空间。
3. 示例

下面是一些使用 exec() 函数的示例:

示例 1:执行代码字符串
code = '''
a = 10
b = 20
print(a + b)
'''
exec(code)

执行结果:

30
示例 2:执行代码对象
code_obj = compile('print(Hello, World!)', '', 'exec')
exec(code_obj)

执行结果:

Hello, World!
示例 3:执行代码文件
with open('example.py', 'r') as file:
    exec(file.read())

示例文件 example.py 的内容:

a = 5
b = 6
print(a * b)

执行结果:

30
4. 注意事项
  • exec() 函数用于执行动态代码,请确保代码的来源可信,以防止安全漏洞。
  • exec() 函数中定义的变量将会存在于局部命名空间中,如果需要在外部访问这些变量,可以通过传入合适的 globals 参数来实现。
  • exec() 函数执行速度较慢,不适用于大规模数据处理或高性能要求的场景,尽量避免过度使用。

以上就是 exec() 函数的介绍,希望能帮助到你理解和使用这个功能强大的 Python 函数。

参考文档:Python exec()