我们在写编程的过程中,会发现,代码会越来越复杂。为了能出现自己想要的内容,程序越写越长,越写越复杂,也越来越难让自己看懂。其实呀,这是不可避免的。但是在python中,有帮助我们执行复杂的python代码,功能十分强大,那就是exec()函数,今天我们就来聊聊exec()函数。
1、exec 语法exec(object[, globals[, locals]])
2、参数
object:必选参数,表示需要被指定的Python代码。它必须是字符串或code对象。如果object是一个字符串,该字符串会先被解析为一组Python语句,然后在执行(除非发生语法错误)。如果object是一个code对象,那么它只是被简单的执行。
globals:可选参数,表示全局命名空间(存放全局变量),如果被提供,则必须是一个字典对象。
locals:可选参数,表示当前局部命名空间(存放局部变量),如果被提供,可以是任何映射对象。如果该参数被忽略,那么它将会取与globals相同的值。
3、返回值
永远为 None。
4、用处
自动创建变量和对象>>> for num in range(1, 101):
exec('variable_' + str(num) + ' = ' + str(num) + '**2')
#使用for循环进行迭代,给变量variable_1至variable_100赋值
>>> variable_18
324
#任选一个变量输出
>>> variable_43*variable_96
17040384
#任选两个变量variable_43和variable_96并求乘积
用于创建和处理类对象class Dog:
def __init__(self,name):
self.name = name
def bark(self):
print(self.name + ' barked!')
for num in range(1,101):
exec('dog_' + str(num) + ' = Dog(str(' + str(num) + '))')
#创建100个dog对象
dog_15.bark()
dog_56.bark()
输出15 barked!
56 barked!
exec 函数是执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python 代码,所以,这么好用,快学起来吧~
在Python编程中,代码易变复杂难理解。而exec()函数可帮助执行复杂代码。本文介绍了exec()函数的语法、参数、返回值,还举例说明了其用处,如自动创建变量和对象、创建和处理类对象等,它比eval能执行更复杂代码。



被折叠的 条评论
为什么被折叠?



