我们之前跟大家描述了在Python里面一些函数的不同使用,以及一些函数的潜藏使用技巧,可是大家有没有听说过,有一个函数一直被誉为最神奇的函数,神奇的地方在哪里?到底怎么神奇?请看下文。

关于eval():

将字符串string对象转化为有效的表达式参与求值运算返回计算结果。

语法上:

调用的是:eval(expression,globals=None, locals=None)返回的是计算结果

其中:

1、expression是一个参与计算的python表达式

2、globals是可选的参数,如果设置属性不为None的话,就必须是dictionary对象了

3、locals也是一个可选的对象,如果设置属性不为None的话,可以是任何map对象了

4、python是用命名空间来记录变量的轨迹的,命名空间是一个dictionary,键是变量名,值是变量值。

下面简单演示一下eval()函数的使用:

#!usr/bin/env python
#encoding:utf-8
import math
def eval_test():
 l='[1,2,3,4,[5,6,7,8,9]]'
 d="{'a':123,'b':456,'c':789}"
 t='([1,3,5],[5,6,7,8,9],[123,456,789])'
 print '--------------------------转化开始--------------------------------'
 print type(l), type(eval(l))
 print type(d), type(eval(d))
 print type(t), type(eval(t))
if __name__=="__main__":
 eval_test()

测试结果输出如下:

--------------------------转化开始--------------------------------
<type 'str'> <type 'list'>
<type 'str'> <type 'dict'>
<type 'str'> <type 'tuple'>
[Finished in 0.2s]
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。