Python eval函数介绍及用法

我们之前跟大家描述了在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]

到此这篇关于Python eval函数介绍及用法的文章就介绍到这了,更多相关Python eval函数是什么?怎么使用?内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解python中eval函数的作用

    eval() 函数用来执行一个字符串表达式,并返回表达式的值. eval函数功能:将字符串str当成有效的表达式来求值并返回计算结果.eval函数可以实现list.dict.tuple与str之间的转化 eval() 方法的语法: eval(expression[, globals[, locals]]) 参数: expression -- 表达式. globals -- 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象. locals -- 变量作用域,局部命名空间,如果被提供,可以

  • 详解python eval函数的妙用

    python eval函数功能:将字符串str当成有效的表达式来求值并返回计算结果. 函数定义: eval(expression, globals=None, locals=None) 将字符串str当成有效的表达式来求值并返回计算结果.globals和locals参数是可选的,如果提供了globals参数,那么它必须是dictionary类型:如果提供了locals参数,那么它可以是任意的map对象. python的全局名字空间存储在一个叫globals()的dict对象中:局部名字空间存储在

  • Python使用eval函数执行动态标表达式过程详解

    英文文档: eval(expression, globals=None, locals=None) The arguments are a string and optional globals and locals. If provided, globals must be a dictionary. If provided, localscan be any mapping object. The expression argument is parsed and evaluated as

  • python学习笔记之调用eval函数出现invalid syntax错误问题

    pytho的使用和分发完全是免费的,它是一种面向对象的语言,它的.它的类模块支持多态,操作符重载和多重继承等高级概念,并且以python特有的简洁的语法和类型,OOP十分易于使用.python内置了众多预编译并可移植的功能模块,这些功能模块叫做标准库(standard library).python可以调用C和C++的库,可以被C和C++的程序调用,可以与java组件集成,可以和COM和.Net等框架进行通信,并且可以通过SOAP.XML-RPC和CORBA等接口与网络进行交互,所以,pytho

  • Python学习笔记整理3之输入输出、python eval函数

    1. python中的变量: python中的变量声明不需要像C++.Java那样指定变量数据类型(int.float等),因为python会自动地根据赋给变量的值确定其类型.如 radius = 20,area = radius * radius * 3.14159 ,python会自动的将radius看成"整型",area看成"浮点型".所以编程时不用再像之前那样小心翼翼的查看数据类型有没有出错,挺人性化的. 2. input和print: 先贴个小的程序 #

  • python3中eval函数用法使用简介

    python中eval函数的用法十分的灵活,这里主要介绍一下它的原理和一些使用的场合. 下面是从python的官方文档中的解释: The arguments are a string and optional globals and locals. If provided, globals must be a dictionary. If provided, locals can be any mapping object. The expression argument is parsed a

  • Python eval函数介绍及用法

    我们之前跟大家描述了在Python里面一些函数的不同使用,以及一些函数的潜藏使用技巧,可是大家有没有听说过,有一个函数一直被誉为最神奇的函数,神奇的地方在哪里?到底怎么神奇?请看下文. 关于eval(): 将字符串string对象转化为有效的表达式参与求值运算返回计算结果. 语法上: 调用的是:eval(expression,globals=None, locals=None)返回的是计算结果 其中: 1.expression是一个参与计算的python表达式 2.globals是可选的参数,如

  • Python eval函数原理及用法解析

    eval函数就是实现list.dict.tuple与str之间的转化 str函数把list,dict,tuple转为为字符串 一.字符串转换成列表 a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]" print(type(a)) b = eval(a)print(type(b)) print(b) 二.字符串转换成字典 a = "{1: 'a', 2: 'b'}" print(type(a)) b = eval(a) print(ty

  • Python定义函数功能与用法实例详解

    本文实例讲述了Python定义函数功能与用法.分享给大家供大家参考,具体如下: 1.函数的意义 一般数学上的函数是,一个或者几个自变量,通过某种计算方式,得出一个因变量. y = f(x) 在Python中,为了使操作更加简洁,就引入了函数这个概念. Python中的函数,可以把一大串要反复使用的代码"定义"(封装)成一个函数,给予这个函数一个标识符作为函数名,设置自变量和因变量.然后要使用这一大串代码的时候,就调用这个我们自己创造的函数,输入自变量,然后会返回给我们因变量. 2.函数

  • Python partial函数原理及用法解析

    这篇文章主要介绍了Python partial函数原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 介绍 partial其实是Python模块functools中定义的一个函数,当我们需要经常调用某个函数时,但是其中某些参数是已知的固定值,这样可能会让代码显得冗余,这个时候就可以考虑使用partial函数. 使用 假设我们要做二进制转十进制 int('1000000', base=2) # 64 int('1010101', bas

  • python dir函数快速掌握用法技巧

    我们常常会引用一些模块,不管是内置模块还是第三方模块或者自己开发的模块,都不可能记住每个模块里面都有什么属性.方法之类的.如果遇到一个模块我们记不住里面的某个属性,这时候一般都会去看该模块的源代码.但这并不是最好的办法,实际上最省力的办法就是,用dir函数,这个内置的函数会给我们答案. 查找当前作用域有什么对象 print(dir()) 调用builtins内置模块使用: print(dir(__builtins__)) 检查对象的文档描述 print(dir.__doc__) 对于初学者来说,

  • python匿名函数的实例用法

    一般情况下,lambda就像是一个函数简化器,它允许在所用代码中嵌入函数的定义.它们完全是可选的(一直都可以使用def替换它们),但只需嵌入少量可执行代码,就能使代码结构更加简洁,从而大大简化代码复杂性,提高代码可读性. 1.优点 (1)减少重复代码: (2)模块化代码. 2.实例 # def函数 def square(x): return x**2 squared = map(square, [1, 2, 3, 4, 5]) # lambda函数 squared = map(lambda x:

  • python eval()函数使用详情

    目录 一.eval()函数是什么? 二.eval()函数语法解析 三.eval()函数应用举例 3.1 eval()基本应用举例 3.2 eval()危害举例 3.3 ast.literal_eval()替代eval()实现数据类型转换 一.eval()函数是什么? Python的一个内置函数: 返回传入字符串的表达式结果(官方) 二.eval()函数语法解析 三.eval()函数应用举例 3.1 eval()基本应用举例 上述例子中,展示了eval()的3个应用: 把字符串转化为代码表达式求结

  • Python eval() 函数看这一篇就够了

    目录 一.语法和参数 二.expression参数示例 三.globals参数示例 四.locals参数示例 五.eval函数的危险之处 六.eval()函数官方文档 附eval()函数常见作用有 总结 一.语法和参数 在Python中evel()函数的语法格式为eval(expression, globals=None, locals=None),注意后面还有globals参数和locals参数.eval()函数用于执行一个字符串表达式,并且返回该表达式的值.与eval相近的有exec函数,该

  • 浅谈PHP eval()函数定义和用法

    eval() 函数把字符串按照 PHP 代码来计算. 该字符串必须是合法的 PHP 代码,且必须以分号结尾. 如果没有在代码字符串中调用 return 语句,则返回 NULL.如果代码中存在解析错误,则 eval() 函数返回 false. 语法 eval(phpcode) 参数 描述 phpcode 必需.规定要计算的 PHP 代码.  提示和注释 注释:返回语句会立即终止对字符串的计算. 注释:该函数对于在数据库文本字段中供日后计算而进行的代码存储很有用. 例子 <?php $string

随机推荐