美文网首页
python中eval函数的用法详解

python中eval函数的用法详解

作者: 愿得一人心白首不相离_c9ed | 来源:发表于2018-08-08 10:57 被阅读0次

    可以把list,tuple,dict和string相互转化。

    1、字符串转换成列表

    >>>a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"

    >>>type(a)

    >>> b = eval(a)

    >>> print b[[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]

    >>> type(b)

    2、字符串转换成字典

    >>> a = "{1: 'a', 2: 'b'}"

    >>> type(a)

    >>> b = eval(a)

    >>> print b{1: 'a', 2: 'b'}

    >>> type(b)

    3、字符串转换成元组

    >>> a = "([1,2], [3,4], [5,6], [7,8], (9,0))"

    >>> type(a)

    >>> b = eval(a)

    >>> print b([1, 2], [3, 4], [5, 6], [7, 8], (9, 0))

    >>> type(b)

    4、eval()函数传进去的参数必须是字符串或者是对象

    示例1:

    >>>a=10;

    >>>print(eval("a+1"))

    >>>执行结果: 11

    示例2:

    >>>a=10;

    >>>g={'a':4}

    >>>print(eval("a+1",g))

    >>>执行结果:5

    示例3:

    >>>a=10

    >>>b=20

    >>>c=30

    >>>g={'a':6,'b':8}

    >>>t={'b':100,'c':10}

    >>>print(eval('a+b+c',g,t))

    >>>执行结果:116  (a=6, b=100, c=10)

    5、eval函数,eval去除引号后会检查到它是不是可计算的,如果可计算会将计算的结果打印出来,如果不可计算直接返回结果

    示例1:不可计算》》》直接输出结果

    >>>s='["a","b","c"]'

    >>>print(eval(s))

    >>>执行结果: ['a', 'b', 'c']

    示例2:表达式可计算》》》计算之后输出结果

    >>>s='abs(-10)'  

    >>>print(eval(s))

    >>>输出结果:10 

    5、eval()函数,功能是将string变成算术表达式来执行

    示例1:

    >>>eval("1+2")

    >>>执行结果: 3

    示例2:

    >>> eval("print(\"hello, world\")")

    >>>输出结果:hello, world

    相关文章

      网友评论

          本文标题:python中eval函数的用法详解

          本文链接:https://www.haomeiwen.com/subject/gzbsuftx.html