内置函数1

exec和eval

exec和evak都可以执行 字符串类型的代码
evak只能用在你明确知道你要执行的代码是什么
eval 有返回值,——适合有结果的简单计算
exec 没有返回。——适合简单的流程控制

exec( 'print(123)')
eval('print(123)')
print(eval('1+2+3+4'))#有返回值
print(exec('1+2+3+4'))#没有返回值
View Code

例如exec

#应用exec
code = '''for i in range(8):
        print('*'*i)'''
exec(code)
View Code

complie

将字符串代码进行编译,代码对象能够通过exec语句来执行或者eval来求值。

compile()用法
'''compile(参数:及字符串或者ast对象,'代码文件名称:从文件里面读代码时,否则为空',执行方式:eval或者exec)'''

code1 = '1+2+3'
h = compile(code1,'','eval')
print(eval(h))
View Code

注意在交互式时,需要把exec方式改为single就行。

 

posted @ 2019-08-24 10:32  套你大象  阅读(112)  评论(0编辑  收藏  举报