Python exec 用法详解及示例
Python中的exec()
函数用于执行动态的Python代码。它以字符串形式接受一个或多个Python语句,然后在当前的全局和局部命名空间中执行这些代码。
exec()
函数有以下语法:
其中,expression
参数是要执行的Python代码,可以是一个字符串或者编译过的代码对象。
globals
和locals
参数可选,分别表示全局和局部命名空间。如果不指定这两个参数,默认为当前的全局和局部命名空间。
以下是3个使用exec()
函数的示例:
示例1: 执行简单的Python代码
这段代码通过exec()
函数执行了一个简单的Python代码,即输出”Hello, World!”。
示例2: 动态定义函数
这段代码通过exec()
函数定义了一个名为add()
的函数,并且可以在后续的代码中调用该函数进行计算。
示例3: 动态导入模块并执行函数
这段代码将通过exec()
函数动态定义了一个名为square()
的函数,并将其保存在名为my_module
的模块中。然后使用import
语句导入my_module
模块,并调用其中定义的函数进行计算。
总结:
exec()
函数允许我们动态地执行Python代码,这在某些情况下非常有用。然而,由于其动态特性,使用exec()
函数需要谨慎,以免带来安全问题。在编写使用exec()
函数的代码时,应该确保输入的代码是可信的,并尽量避免使用不受信任的代码。