**功能:**执行字符串表达式,并返回表达式的值。就是说将字符串str当成有效的表达式来进行求值并返回结果 **语法:** ```python eval(expression[, globals[, locals]]) -> value ``` **参数:** expression : 表达式。 globals : 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。 locals : 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。 如果globals与locals都被忽略,那么它们将取eval()函数被调用环境下的全局命名空间和局部命名空间。 如果expression是一个输出语句,如print(),则eval()返回结果为None; **举例** ```python # expression是一条输出语句的时候,返回值是None In [9]: print(eval("print('这是一条输出语句')")) 这是一条输出语句 # 这是 print('这是一条输出语句') 打印的 None # 这是eval()的返回值 ``` ```python In [12]: m = "[1, 2, 3, 4]" # 字符串转换成列表 In [13]: type(m) Out[13]: str In [14]: n = eval(m) In [15]: n Out[15]: [1, 2, 3, 4] In [16]: type(n) Out[16]: list #字符串转换成字典 In [17]: d = "{'hello':'kitty'}" In [18]: type(d) Out[18]: str In [19]: type(eval(d)) Out[19]: dict # 字符串转换成元组 In [20]: t = "(1,2,3,4,5)" In [21]: q = eval(t) In [22]: q Out[22]: (1, 2, 3, 4, 5) In [23]: type(q) Out[23]: tuple ``` 最后修改:2019 年 01 月 11 日 01 : 11 PM © 著作权归作者所有