字符串中的字典取出value值(eval 使用及介绍)

Posted timeouting-study

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串中的字典取出value值(eval 使用及介绍)相关的知识,希望对你有一定的参考价值。

eval:eval() 函数用来执行一个字符串表达式,并返回表达式的原始值。

例如:有个字符串 A="{‘value‘: ‘hello‘}"

想要输出该字符串的value值,应该怎么办。

如果仅仅是一个字典的话直接取dict[‘key‘]就可以轻松取出来,但是在字符串中我们就必须想办法把字符串转化成字典。这时候eval函数就该闪亮登场了。

代码如下:

>>> A="{‘value‘: ‘hello‘}"
>>> B=eval(A)
>>> B
{value: hello}

 

 

此时在字典情况下想取出值就轻而易举了!

>>> B[value]

作者博文地址:https://www.cnblogs.com/liu-shuai/

eval

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

  语法: eval(source[, globals[, locals]]) -> value

  参数:

    source:一个Python表达式或函数compile()返回的代码对象

    globals:可选。必须是dictionary

    locals:可选。任意map对象

  实例展示:

可以把list,tuple,dict和string相互转化。
#################################################
字符串转换成列表
>>>a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"
>>>type(a)
<type str>
>>> b = eval(a)
>>> print b
[[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]
>>> type(b)
<type list>
#################################################
字符串转换成字典
>>> a = "{1: ‘a‘, 2: ‘b‘}"
>>> type(a)
<type str>
>>> b = eval(a)
>>> print b
{1: a, 2: b}
>>> type(b)
<type dict>
#################################################
字符串转换成元组
>>> a = "([1,2], [3,4], [5,6], [7,8], (9,0))"
>>> type(a)
<type str>
>>> b = eval(a)
>>> print b
([1, 2], [3, 4], [5, 6], [7, 8], (9, 0))
>>> type(b)
<type tuple>

 

以上是关于字符串中的字典取出value值(eval 使用及介绍)的主要内容,如果未能解决你的问题,请参考以下文章

python 取出 字典的 键或者值

取出yaml中的字符并转换为元祖

取出yaml中的字符并转换为元祖

Python中把字典和值取出来

字典中的Eval函数使用单个引用但不作为字典理解

创建和访问字典