首页 > 其他分享 >80:eval()函数用法

80:eval()函数用法

时间:2022-11-19 14:23:23浏览次数:45  
标签:函数 python 用法 字符串 globals eval print 80

###eval()函数

 

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

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

参数:
source:一个 Python 表达式或函数 compile()返回的代码对象
globals:可选。必须是 dictionary
locals:可选。任意映射对象

# 测试 eval()函数

s = "print('abcde')"
eval(s)

a = 10
b = 20
c = eval("a+b")
print(c)

dict1 = dict(a=100, b=200)

d = eval("a+b", dict1)
print(d)

输出结果:

D:\work\python\two\venv\Scripts\python.exe D:\work\python\two\mypy17.py 
abcde
30
300

eval 函数会将字符串当做语句来执行,因此会被注入安全隐患。比如:字符串中含有删除文件的语句。那就麻烦大了。因此,使用时候,要慎重!!!

标签:函数,python,用法,字符串,globals,eval,print,80
From: https://www.cnblogs.com/yuanzijian/p/16906035.html

相关文章

  • UnicodeDecodeError:'gbk' codec can't decode byte 0x80 in position 0 illegal multi
    UnicodeDecodeError:'gbk'codeccan'tdecodebyte0x80inposition0illegalmultibytesequence 回答1ifyouwillopenfilewithutf-8,thenyouneedwrite:o......
  • Shell脚本的基础用法介绍
    Shell脚本介绍Shell一个命令行解释器,它的作用是将输入的命令加以解释并传给系统执行,是用户与系统沟通的桥梁,而Shell脚本是一种脚本语言,支持逻辑判断,循环执行......
  • Python 写入文件、读取文件内容——open函数/readLines/Write/find函数用法
    1、读取.txt整个文件ww.txt文件在程序文件所在的目录,在文件存储在其他地方,ww.txt需要添加文件路径,如:E:\book1\ww.txt;读取后希望返回的是列表类型,将read改为readlineswit......
  • Messagebox的简单用法
    实训后,让我对消息弹窗这一部分内容特别感兴趣,现在对弹窗消息做一点小小的总结:1、头文件#include<windows.h>,只能在windows环境下进行;2、MessageBox(NULL,"弹窗的消息内容",......
  • 8086汇编 王爽版本 笔记集合
    8086汇编语言王爽版个人笔记这篇博客是个导航第一部分:绪论第二部分:访问寄存器和内存第三部分:汇编语言程序(书中4、5、6章)第四部分:内存寻址方式(书中7、8章)第五部分:......
  • git revert 用法
    一、初级用法gitrevert撤销某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销,作为一次最新的提交。 gitrevertHEAD撤销前一次commit ......
  • Excel函数Vlookup经典用法
    一、常规用法常规用法相信几乎所有职场人都用过,比如在这里,我们想要根据姓名来查找班级,只需要将公式设置为:=VLOOKUP(F5,B2:C11,2,0)二、多条件查找这种情况适用于查找值存在......
  • mybatis中${}的用法
    MyBatis中${}的用法表t_user有如下4个字段:id 、name、 age 、 consume_amt如果需求是有时候是要age的平均数,有的是consume_amt的平均数,那么可以把列表传到SQL中查询......
  • oracle中with的用法是什么
    oracle中with的用法是什么在oracle中,with语句可以实现子查询,用于创建一个公共临时表,提高语句执行的效率,语法为“withtempNameas(select....)select...”。我们在ora......
  • [转] 不会 find 命令这 7 种用法!你算啥运维人
    原文:https://mp.weixin.qq.com/s/Mm1NFoyz7gy5QtionKLq9w 可以很肯定地说,find命令是Linux后台开发人员必须熟知的操作之一,除非您使用的是WindowsServer。对于技术......