当前位置 : 主页 > 编程语言 > python >

python eval()函数使用详情

来源:互联网 收集:自由互联 发布时间:2021-12-01
目录 一、eval()函数是什么? 二、eval()函数语法解析 三、eval()函数应用举例 3.1 eval()基本应用举例 3.2 eval()危害举例 3.3 ast.literal_eval()替代eval()实现数据类型转换 一、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个应用:

  • 把字符串转化为代码表达式求结果,如 66+72
  • 把字符串转化为其它数据类型,如字典、列表、元组、集合等
  • 传递globals参数和locals参数,当两个参数都存在时,先查找locals参数,再查找globals参数,locals参数中同名变量会覆盖globals中的变量

3.2 eval()危害举例

上述例子中,eval()将字符串转成表达式并执行,就可以利用其执行系统命令,删除文件等操作。

3.3 ast.literal_eval()替代eval()实现数据类型转换

上述代码也能完成类型转换,但由于没有使用eval() ,所以产生的安全风险较小。

literal_eval() 函数:会判断需要计算的内容计算后是不是合法的python类型,如果是则进行运算,否则就不进行运算。

总结:

到此这篇关于python eval()函数使用详情的文章就介绍到这了,更多相关python eval()函数使用内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

上一篇:Python四大金刚之集合详解
下一篇:没有了
网友评论