python_eval的用法
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的用法的更多相关文章
- EditText 基本用法
title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...
- jquery插件的用法之cookie 插件
一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...
- Java中的Socket的用法
Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...
- [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法
一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...
- python enumerate 用法
A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...
- [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...
- 【JavaScript】innerHTML、innerText和outerHTML的用法区别
用法: <div id="test"> <span style="color:red">test1</span> tes ...
- chattr用法
[root@localhost tmp]# umask 0022 一.chattr用法 1.创建空文件attrtest,然后删除,提示无法删除,因为有隐藏文件 [root@localhost tmp] ...
- 萌新笔记——vim命令“=”、“d”、“y”的用法(结合光标移动命令,一些场合会非常方便)
vim有许多命令,网上搜有一堆贴子.文章列举出各种功能的命令. 对于"="."d"."y",我在无意中发现了它们所具有的相同的一些用法,先举 ...
随机推荐
- get 和 post请求的区别
(1)GET请求用于获取信息,从Client的角度看,不会改变资源状态,并且多次对同一URL的多个请求应该返回相同的结果. GET请求的参数会显示在URL中,即放置在HTTP协议头中(所 ...
- Checking the Calendar
Checking the Calendar time limit per test 1 second memory limit per test 256 megabytes input standar ...
- opencv---cvor
void cvXor计算两个数组中的每个元素的按位异或. void cvXor (const CvArr* src1, const CvArr* src2, CvArr* dst, const CvA ...
- mysql 字段的类型有哪些
int型包括(tinyint, smallint, mediumint, int, bigint) tinyint是1个字节表达范围就是2的8次方(-128-128) 或者(0-255) 很多人不明白 ...
- php实现echo json_encode正确显示汉字
<?php header('Content-type: text/html; charset=utf-8'); /* function showmessage($msg = '', $redir ...
- [转]JSONObject与JSONArray的使用
http://www.cnblogs.com/xwdreamer/archive/2011/12/16/2296904.html 参考文献: http://blog.csdn.net/huangwuy ...
- java 多线程机制
Example12_1.java public class Example12_1 { public static void main(String args[]) { //主线程 SpeakElep ...
- java 接口参数
Example6_5.java interface SpeakHello { void speakHello(); } class Chinese implements SpeakHello { pu ...
- ZOJ Problem - 2588 Burning Bridges tarjan算法求割边
题意:求无向图的割边. 思路:tarjan算法求割边,访问到一个点,如果这个点的low值比它的dfn值大,它就是割边,直接ans++(之所以可以直接ans++,是因为他与割点不同,每条边只访问了一遍) ...
- map.entry<k,v>小用法(转)
你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦?使用Map.Entry类,你可以得到在同一时间得到所有的信息.标准的Map访问方法如下: Set keys = map.keySet( ...