Python eval函数介绍及用法


Posted in Python onNovember 09, 2020

我们之前跟大家描述了在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函数是什么?怎么使用?内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
MySQLdb ImportError: libmysqlclient.so.18解决方法
Aug 21 Python
Python循环语句之break与continue的用法
Oct 14 Python
Python数据类型详解(四)字典:dict
May 12 Python
python中Matplotlib实现绘制3D图的示例代码
Sep 04 Python
Python中矩阵创建和矩阵运算方法
Aug 04 Python
django多文件上传,form提交,多对多外键保存的实例
Aug 06 Python
python 使用opencv 把视频分割成图片示例
Dec 12 Python
PyTorch中反卷积的用法详解
Dec 30 Python
Python tkinter和exe打包的方法
Feb 05 Python
在python中实现求输出1-3+5-7+9-......101的和
Apr 02 Python
一文轻松掌握python语言命名规范规则
Jun 18 Python
Python判断字符串是否为合法标示符操作
Sep 03 Python
python tkinter的消息框模块(messagebox,simpledialog)
Nov 07 #Python
python 用struct模块解决黏包问题
Nov 07 #Python
python hmac模块验证客户端的合法性
Nov 07 #Python
python如何利用paramiko执行服务器命令
Nov 07 #Python
基于python模拟TCP3次握手连接及发送数据
Nov 06 #Python
如何使用Django Admin管理后台导入CSV
Nov 06 #Python
Selenium结合BeautifulSoup4编写简单的python爬虫
Nov 06 #Python
You might like
PHP中获取变量的变量名的一段代码的bug分析
2011/07/07 PHP
php中用加号与用array_merge合并数组的区别深入分析
2013/06/03 PHP
解析PHP跨站刷票的实现代码
2013/06/18 PHP
PHP中的函数-- foreach()的用法详解
2013/06/24 PHP
thinkPHP简单导入和使用阿里云OSSsdk的方法
2017/03/15 PHP
jquery 注意事项与常用语法小结
2010/06/07 Javascript
jquery显示隐藏input对象
2014/07/21 Javascript
Javascript基础教程之比较操作符
2015/01/18 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
删除javascript所创建子节点的方法
2015/05/21 Javascript
jQuery实现鼠标滚动图片延迟加载效果附源码下载
2016/06/28 Javascript
js中使用使用原型(prototype)定义方法的好处详解
2016/07/04 Javascript
全屏滚动插件fullPage.js使用实例解析
2016/10/21 Javascript
浅谈AngularJs指令之scope属性详解
2016/10/24 Javascript
Bootstrap 过渡效果Transition 模态框(Modal)
2017/03/17 Javascript
利用webstrom调试Vue.js单页面程序的方法教程
2017/06/06 Javascript
ES6中Array.includes()函数的用法
2017/09/20 Javascript
vue webpack开发访问后台接口全局配置的方法
2018/09/18 Javascript
如何将Node.js中的回调转换为Promise
2020/11/10 Javascript
python中黄金分割法实现方法
2015/05/06 Python
Python之父谈Python的未来形式
2016/07/01 Python
win10系统中安装scrapy-1.1
2016/07/03 Python
Python yield与实现方法代码分析
2018/02/06 Python
Python学生信息管理系统修改版
2018/03/13 Python
使用python实现多维数据降维操作
2020/02/24 Python
利用Python脚本批量生成SQL语句
2020/03/04 Python
python获取本周、上周、本月、上月及本季的时间代码实例
2020/09/08 Python
html5如何及时更新缓存文件(js、css或图片)
2013/06/24 HTML / CSS
全球异乡人的跨境社交电商平台:Kouhigh口嗨网
2020/07/24 全球购物
巴西24小时在线药房:Drogasil
2020/06/20 全球购物
某/etc/fstab文件中的某行如下: /dev/had5 /mnt/dosdata msdos defaults,usrquota 1 2 请解释其含义
2013/09/18 面试题
市三好学生主要事迹
2014/01/28 职场文书
离婚财产分隔协议书
2014/10/23 职场文书
2014年党的群众路线学习心得体会
2014/11/05 职场文书
员工给公司的建议书
2019/06/24 职场文书
mysql 数据插入优化方法之concurrent_insert
2021/07/01 MySQL