python中eval函数的功能是什么?新手朋友可能对eval()函数比较陌生,其实eval()函数的作用就是用来执行一个字符串表达式,并返回表达式的值。那么eval()函数怎样用呢?下面我们一起来了解一下eval()函数的用法。
python中eval的用法:
python eval() 函数的功能:将字符串str当成有效的表达式来求值并返回计算结果。
语法:
eval(source[, globals[, locals]]) -> value
参数:
source
:一个Python表达式或函数compile()返回的代码对象
globals
:可选。必须是dictionary
locals
:可选。任意map对象
如果提供了globals参数,那么它必须是dictionary类型;如果提供了locals参数,那么它可以是任意的map对象。
python的全局名字空间存储在一个叫globals()
的dict对象中;局部名字空间存储在一个叫locals()
的dict对象中。我们可以用print (locals())来查看该函数体内的所有变量名和变量值。
x = 1 y = 1 num = eval("x y") print('num',num) def g(): x = 2 y = 2 num1 = eval("x y") print('num1',num1) num2 =eval("x y",globals()) print('num2',num2) num3 = eval("x y",globals(),locals()) print('num3',num3) g() num 2 num1 4 num2 2 num3 4
解析:num2 因为有globals所以是全局变量,执行后结果为4;num3 既有globals 又有locals,仅在此情况下,优先采用locals的值,故计算结果是2。
以上就是python中eval函数的功能及用法的介绍了,上述实例对大家学习eval函数的使用一定的帮助,需要的朋友可以借鉴学习,想要了解更多请关注群英网络其它相关文章。
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2018 群英 版权所有 茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号-36 粤公网安备 44090202000006号 粤工商备P091701000595