十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
exec('print 3')
牧野ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!
得到的结果就是3,而不是print 3。
exec的用法是可以识别字符串内的关键词语句并运行它。
比如这里的'print 3'已经是一个字符串了,但是使用exec就可以识别print并执行print语句打印出3。
不过这个其实基本很少用,不过要用的时候就能派上用场。
(1)eval(str [,globals [,locals ])函数将字符串str当成有效Python表达式来求值,并返回计算结果。
(2)exec()函数将字符串str当成有效的Python表达式来执行,不返回计算结果:
比如:
content = eval('%s', content)
print content #打印格式化后的content
exec('a = 1')
pritn a #1
exec(expr, {'x':1,'y':2}) 这句很明显:30+1+2=33
exec(expr, {'x':1,'y':2}, {'y':3,'z':4})这句:
x传入的是1,y第一个传入的是2,第二次传的是3将之前的2覆盖了。所以y是3,z传入的是4。但是在expr里面重新给z赋值了30,所以结果是30+1+3=34