Python内置函数eval()

eval()是Python的内置函数,它的第一个参数是一个字符串,eval会解析此参数,把它作为一个python的表达式来执行。

语法

eval的语法如下:

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

参数:

  • expression -- 表达式。
  • globals -- 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
  • locals -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。

其中globals和locals都是可选参数。

返回值:为执行表达式后返回的结果,通常他的类型是整型。

eval()的使用场景

eval()通常是使用在数学计算的表达式中,或者是想把一个字符串作为代码运行的情况下会使用到eval()

示例:

>>>x = 7
>>> eval( '3 * x' )
21
>>> eval('pow(2,2)')
4
>>> eval('2 + 2')
4
>>> n=81
>>> eval("n + 4")
85


版权声明:著作权归作者所有。

相关推荐

理解JavaScript普通函数以及箭头函数里使用的this

this普通函数的this普通函数的this是由动态作用域决定,它总指向于它的直接调用者。具体可以分为以下四项:this总是指向它的直接调用者, 例如 obj.func() ,那么func()里的this指的是obj。在默认情况(非严格模式,未使用 'use strict'),如果函数没有直接调用者,this为window在严格模式下,如果函数没有

Android Studio 3内置支持Java 8的相关配置

Android Studio 3开始支持Java 7全部的特性,以及内置支持Java 8部分特性。原理Android Studio 3支持Java 8做法是使用称为desugar工具把javac编译后的.class做字节转换,转换为新的.class文件,最后使用dex转换为dex文件。配置Android Studio&

Kotlin集合扩展函数 - 转换

Kotlin 集合类型提供了很多用于转换的扩展函数。这里需要指出示例里的intList为val intList: List<I­nt> = listOf(1, 2, 3) associate关联函数:使用转换函数把Array或Iterable转换为Map:数组fun <T, K, V> any_array

Python 函数内修改关键字参数**kw的安全性考虑

Python定义函数常常会使用关键字参数**kw来接收字典值。基本语法def f(p1,p2,**kw) **kw将接收0个或任意个含参数名的参数,这些关键字参数在函数内部会自动组合为一个字典。示例def person(**kw)     for k in kw:    &nbs