1. eval用法:

将字符串str当成有效的表达式来求值并返回计算结果。

2. eval的功能:

  • math当成一个计算器很好用。
  • 将字符串转换为list,tuple,dict。

3. 举例

# -*- coding: utf-8 -*-
import math # 作为计算器使用
print u"获取数字的绝对值:%d" % eval("%d" % math.fabs(-8)) # 将字符串转换为list
list_str = "[[1,2], [3,4], [5,6], [7,8], [9,0]]" print u"list_str:未执行eval,获取第1个元素,期望值:[1,2], 实际值:%s" % (list_str[0])
list_list = eval(list_str)
print u"list_str:已执行eval,获取第1个元素,期望值:[1,2], 实际值:%s" % (list_list[0]) # 将字符串转换为dic。
dict_str = "{1: 'a', 2: 'b'}" print u"dict_str:未执行eval,获取1的值,期望值:a, 实际值:%s" % (dict_str[1])
dict_dict = eval(dict_str)
print u"dict_str:已执行eval,获取1的值,期望值:a, 实际值:%s" % (dict_dict[1]) # 将字符串转换为tuple
tuple_str = "((1,2), 3, 4, 5, 6)" print u"list_str:未执行eval,获取第1个元素,期望值:(1,2), 实际值:%s" % (tuple_str[0])
tuple_tuple = eval(tuple_str)
print u"list_str:已执行eval,获取第1个元素,期望值:(1,2), 实际值:(%s, %s)" % tuple_tuple[0]

python_eval的用法的更多相关文章

  1. EditText 基本用法

    title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...

  2. jquery插件的用法之cookie 插件

    一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...

  3. Java中的Socket的用法

                                   Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...

  4. [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法

    一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...

  5. python enumerate 用法

    A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...

  6. [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

    本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...

  7. 【JavaScript】innerHTML、innerText和outerHTML的用法区别

    用法: <div id="test">   <span style="color:red">test1</span> tes ...

  8. chattr用法

    [root@localhost tmp]# umask 0022 一.chattr用法 1.创建空文件attrtest,然后删除,提示无法删除,因为有隐藏文件 [root@localhost tmp] ...

  9. 萌新笔记——vim命令“=”、“d”、“y”的用法(结合光标移动命令,一些场合会非常方便)

    vim有许多命令,网上搜有一堆贴子.文章列举出各种功能的命令. 对于"="."d"."y",我在无意中发现了它们所具有的相同的一些用法,先举 ...

随机推荐

  1. **ERROR: Ninja build tool not found.

    | if which ninja-build ;\| then \| ln -s `which ninja-build` bin/ninja ;\| else \| echo "***ERR ...

  2. ng-if 和 ng-show/ng-hide 之间的区别

    ng-if会移除dom,生成dom,而ng-show只是改变其display属性.所以你自己看着用吧.

  3. listener.ora

    EOF YESTERDAY=`cat /database/log/tns_log/yesterday.out` TODAY=`date '+%d-%b-%Y'` echo $YESTERDAY  $T ...

  4. Oulipo HDU 1686 KMP模板

    题目大意:求模式串在主串中的出现次数. 题目思路:KMP模板题 #include<iostream> #include<algorithm> #include<cstri ...

  5. 字符串编码问题(Ascii、Unicode、UCS-2、GBK、UTF-8)

    1.字符编码的发展 第一阶段:ASCII阶段,(American Standard Code for Information Interchange, "美国信息交换标准码),计算机当时只支 ...

  6. stl function扩展(一)

    #ifndef _FUNCTION_LIB_H_ #define _FUNCTION_LIB_H_ #include <functional> namespace function_lib ...

  7. hdu-1978_How many ways dfs+记忆化搜索

    How many ways Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) Total ...

  8. HDU 5240 Exam

    The 2015 ACM-ICPC China Shanghai Metropolitan Programming Contest 2015ACM-ICPC上海大都会赛 签到题 #include< ...

  9. Ubuntu 12.04和Windows 7双系统安装图解

    http://wenku.baidu.com/link?url=PZlnNOhY0SjHDW-teFFnCMzPYJVjx7vj6yWY-o5HHFLuFqhLI4uFcQVu_y0_6i7vpSnz ...

  10. zencart 新页面调用好功能代码集:

    其实很多就是看变量,就可以直接调用,而变量的定义地方很多,比如language 1.  includes\languages\语言.php 2. 写个文件,放进includes\extra_confi ...