eval

xiaoxiao2021-02-28  107

eval 会计算pyhon表达式(以字符串形式书写),并且返回结果值,(exec语句并不返回任何对象,因为他本身就是语句), 例如:可以使用下面的代码创建一个python计算器:

eval(input("Enter an artithmetic expression:")) Enter an artithmetic expression:6+23 29

跟exec 一样,eval也可以使用命名空间。尽管表达式几乎不像语句那样为变量重新赋值(eval语句提供两个命名空间,一个全局,一个局部,全局的必须是字典,局部的可以是任何形式的映射) 给exec 或者 eval 语句提供命名空间时,还可以在真正使用命名空间前放置一些值:

scope={} scope['x']=2 scope['y']=2 eval('x*y',scope) 4
转载请注明原文地址: https://www.6miu.com/read-32467.html

最新回复(0)