python教程:python中eval的用法是什么

 所属分类:php教程

 浏览:79次-  评论: 0次-  更新时间:2022-09-29
描述:更多教程资料进入php教程获得。 python中eval的用法:将字符串str当成有效的表达式来求值并返回计算结果,语法为【eval(source[, globals[...
更多教程资料进入php教程获得。

python中eval的用法:将字符串str当成有效的表达式来求值并返回计算结果,语法为【eval(source[, globals[, locals]]) -> value】。

程序员必备接口测试调试工具:立即使用
Apipost = Postman + Swagger + Mock + Jmeter
Api设计、调试、文档、自动化测试工具
后端、前端、测试,同时在线协作,内容实时同步

本教程操作环境:windows7系统、python3.9版,DELL G3电脑,该方法适用于所有品牌电脑。

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视频教程

以上就是python中eval的用法是什么的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: python,eval,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!