位置: 编程技术 - 正文

详解python eval函数的妙用(eval()函数python)

编辑:rootadmin

推荐整理分享详解python eval函数的妙用(eval()函数python),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python中eval函数作用,python eval函数用法,python中eval()函数的用法讲解,eval()函数python,python里面eval函数,python里面eval函数,python里面eval函数,python3中eval函数用法简介,内容如对您有帮助,希望把文章链接给更多的朋友!

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

函数定义:

将字符串str当成有效的表达式来求值并返回计算结果。globals和locals参数是可选的,如果提供了globals参数,那么它必须是dictionary类型;如果提供了locals参数,那么它可以是任意的map对象。

python的全局名字空间存储在一个叫globals()的dict对象中;局部名字空间存储在一个叫locals()的dict对象中。我们可以用print (locals())来查看该函数体内的所有变量名和变量值。

Python版本兼容:

Python2.7 Python3.x

eval()主要作用:

1)在编译语言里要动态地产生代码,基本上是不可能的,但动态语言是可以,意味着软件已经部署到服务器上了,但只要作很少的更改,只好直接修改这部分的代码,就可立即实现变化,不用整个软件重新加载。2)在machin learning里根据用户使用这个软件频率,以及方式,可动态地修改代码,适应用户的变化。

英文解释:

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.

详解python eval函数的妙用(eval()函数python)

The expression argument is parsed and evaluated as a Python expression (technically speaking, a condition list) using the globals and locals dictionaries as global and local namespace. If the globals dictionary is present and lacks ‘__builtins__', the current globals are copied into globals before expression is parsed. This means that expression normally has full access to the standard builtins module and restricted environments are propagated. If the locals dictionary is omitted it defaults to the globals dictionary. If both dictionaries are omitted, the expression is executed in the environment where eval() is called. The return value is the result of the evaluated expression. Syntax errors are reported as exceptions. Example:

例子:

结果:1

例子2, 测试globals, locals

num1的值是2;num3的值也很好理解,是4;num2的值呢?由于提供了globals()参数,那么首先应当找全局的x和y值,也就是都为1,那么显而易见,num2的值也是2。如果注释掉该句,执行下面一句呢?根据第3)点可知,结果为4

实例展示:

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

安全问题:

因为eval的特型, 很可能被黑客利用,造成安全问题。

怎么避免安全问题?

1、自行写检查函数;

2、使用ast.literal_eval代替

标签: eval()函数python

本文链接地址:https://www.jiuchutong.com/biancheng/372278.html 转载请保留说明!

上一篇:Python算法之图的遍历(python图论算法)

下一篇:python定时利用QQ邮件发送天气预报的实例

  • 外贸出口退税流程视频
  • 房产税税源信息采集错误已到申报期怎么办
  • 增值税科目及会计处理
  • 定金冲抵货款怎么做分录
  • 公司期权激励如何兑现
  • 投标报名费开什么类别发票
  • 个人所得税修改赡养信息
  • 政府补贴什么时候确认收入
  • 增值税税率2019
  • 公司购车预计净残值率怎么计算
  • 小规模纳税人进项发票怎么做账
  • 公司给非员工代缴社保合法吗
  • 分批收款收据怎么写
  • 税务局多扣的税可以退吗
  • 餐饮业是否可以开专用发票
  • 事业单位考试一门多长时间
  • 临时工发工资要扣税吗
  • 跟银行借款按月还款
  • 借主营业务成本贷库存商品
  • 旧货销售的增值税税率
  • 财务报表未分配利润为负数
  • 会计上金融资产包括哪些
  • win10右键个性化打不开 没有与之关联程序
  • PHP:mb_ereg_search()的用法_mbstring函数
  • 红冲暂估需要附件吗
  • 劳务的完成程度可以采用如下方法确定
  • 销售不动产应交的增值税计入
  • 税前扣除凭证管理办法第九条称小额零星支出是
  • 辞退员工补偿标准是n+1还是2n
  • 无形资产使用寿命的复核
  • 采用权益法核算
  • php实现5分钟倒计时
  • 虚开增值税怎么查到的
  • html在线小游戏
  • flex:4
  • 经费支出的定义
  • 办理车辆购置税流程
  • 什么是稳岗补贴是给企业发放吗
  • 补缴去年的附加税怎么算
  • sql语句修改某个字段
  • 税金及附加的科目核算有哪些
  • 小规模纳税人出售使用过固定资产
  • 非居民企业的所得一律适用20%的企业所得税税率
  • 出口货物弃货
  • 生产过程中报废怎么核算成本
  • 租出的固定资产
  • 费用报销冲抵借支
  • 项目开票分录
  • 快递费属于办公费吗
  • 主营业务收入转入什么科目
  • 金税盘技术维护费
  • 购买电脑配件组件怎么选
  • 空调安装开发票
  • 管理费用中的水电费怎么记账
  • 一般要做代理,授权书有什么用
  • 政府部门有税务和审计审查吗
  • macbook和windows
  • centos 安装选择
  • 如何安装vmware10
  • u盘安装winpe
  • 怎么安装win7系统不占硬盘空间呢
  • xp系统怎样设置无线网络连接
  • 苹果系统声音怎么设置方法
  • mac上安装
  • RPDFLchr.exe - RPDFLchr是什么进程 有什么用
  • windows疑难解答在哪里
  • Win7系统启动qq无法访问个人文件怎么解决
  • android内存优化 简书
  • python生成密钥
  • opengl房子建模
  • jquery 图片插件
  • JavaScript定义变量
  • python内置数据结构有哪些
  • 全国税务发票查询电话
  • 保险理赔款如何分配
  • 电子税务局登录不上,显示用户名不匹配
  • 发票机怎么测试打印
  • 税务怎么报停
  • 如何查到银行
  • 烟叶税比例
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设