优草派  >   Python

Python中eval的用法是什么?Python中的eval函数如何使用?

翟嘉慧            来源:优草派

我们之前学习过函数的一些知识,在编程语言的学习中,函数的使用可以大大的提高我们的工作效率,今天学习的函数是eval,它是可以将字符串当成有效的表达式来求值并返回计算结果的函数,为了帮助大家更好的了解这个函数的用法,分享一篇关于Python中eval的用法是什么?Python中的eval函数如何使用?的文章,感兴趣的朋友可以参考一下。

Python中eval的用法是什么?Python中的eval函数如何使用?

有时候需要对字符串进行处理的时候,会用到各种各样的函数,eval函数是可以把一个字符串当成是一个表达式来进行计算,并且还会对相应的值进行返回,具体的语法格式如下:

eval(source[, globals[, locals]])

通过语法,我们可以发现,它包含着三个参数,其中第一个参数表示的是一个Python表达式 或者是一个compile()函数返回的代码对象,第二个参数表示的是一个可选参数,但是必须是一个字典的形式,最后一个参数也是一个可选参数,可以使任意的map对象。意思就是在这两个可选参数中,如果有参数使用的是globals,那么它使用的形式就是一个字典,如果是locals参数,它使用的就是任意的map对象了。

举个例子:

x = 1
 y = 1
 N = eval("x+y")
print('N',N)
 def g():
     x = 2
    y = 2
    N1 = eval("x+y")
    print('N1',N1)
     N2 =eval("x+y",globals())
     print('N2',N2)
     N3 = eval("x+y",globals(),locals())
     print('N3',N3)
g()

运行结果:

N 2
N1 4
N2 2
N3 4

在上面的代码中,N2 因为使用了关键字globals,所以它表示的是全局变量,在最后的运行结果中为4;在N3包括了globals 又使用了locals,在这种情况下,我们会先使用locals的值,所以最后的运行结果是2。

以上就是有关Python中eval的用法是什么?Python中的eval函数如何使用?的全部内容了,希望可以帮助到大家。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行