Python内置函数 eval

eval函数用于计算字符串表达式的值,并返回结果。

语法

eval(source, globals=None, locals=None, /)

其中source为字符串,Python使用globals全局字典和locals局部字典作为命名空间,将expression当做表达式进行解析和计算

举例

In [42]: eval(input("enter two nums:"))
enter two nums:1+2
Out[42]: 3

全局作用域

In [18]: a=1

In [19]: d1={'a':10}

In [21]: print(eval('a+1',d1))
11

In [23]: print(eval('a+1'))
2

局部作用域

当有局部作用域和全局作用域的时候,局部作用域生效

In [4]: a=1

In [5]: b=2

In [6]: c=3

In [7]: d1={'a':4,'b':5}

In [8]: d2={'b':6,'c':7}

In [10]: print(eval('a+b+c',d1,d2))
17

In [11]: print(eval('a+b+c',d2,d1))
16
原文地址:https://www.cnblogs.com/zh-dream/p/13759428.html