Python中的eval函数的作用是什么,怎样用?
导读:这篇文章我们来了解Python中的eval函数的作用和用法,eval函数能将字符串str当成有效的表达式来求值并返回计算结果,下文有示例供大家参考,对大家学习eval函数的用法有参考价值,接下来跟随小编来一起学习一下吧!本教程操作环境:wi...
这篇文章我们来了解Python中的eval函数的作用和用法,eval函数能将字符串str当成有效的表达式来求值并返回计算结果,下文有示例供大家参考,对大家学习eval函数的用法有参考价值,接下来跟随小编来一起学习一下吧!
本教程操作环境:windows7系统、python3.9版,DELL G3电脑,该方法适用于所有品牌电脑。
python中eval的用法:
python eval() 函数的功能:将字符串str当成有效的表达式来求值并返回计算结果。
语法:
eval(source[, globals[, locals]]) -> value
参数:
source
:一个Python表达式或函数compile()返回的代码对象globals
:可选。必须是dictionarylocals
:可选。任意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函数有帮助,想要了解更多可以继续浏览网络其他相关的文章。
文本转载自PHP中文网
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Python中的eval函数的作用是什么,怎样用?
本文地址: https://pptw.com/jishu/651165.html