python eval()函数使用详情

作者:Python 时间:2021-10-17 02:09:23 

一、eval()函数是什么?

Python的一个内置函数;
返回传入字符串的表达式结果(官方)

二、eval()函数语法解析

python eval()函数使用详情

三、eval()函数应用举例

3.1 eval()基本应用举例

python eval()函数使用详情

上述例子中,展示了eval()的3个应用:

  • 把字符串转化为代码表达式求结果,如 66+72

  • 把字符串转化为其它数据类型,如字典、列表、元组、集合等

  • 传递globals参数和locals参数,当两个参数都存在时,先查找locals参数,再查找globals参数,locals参数中同名变量会覆盖globals中的变量

3.2 eval()危害举例

python eval()函数使用详情

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

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

python eval()函数使用详情

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

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

来源:https://zhuanlan.zhihu.com/p/193129156

标签:python,eval()
0
投稿

猜你喜欢

  • python密码学简单替代密码解密及测试教程

    2023-09-30 08:13:00
  • mysql表的性能提升的相关问题

    2010-03-03 16:31:00
  • Python 恐龙跑跑小游戏实现流程

    2021-10-23 19:42:59
  • python的help函数如何使用

    2023-12-21 10:46:48
  • 火车票抢票python代码公开揭秘!

    2021-06-16 18:34:29
  • Go语言使用sort包对任意类型元素的集合进行排序的方法

    2023-09-02 03:55:18
  • Python爬虫基础之XPath语法与lxml库的用法详解

    2022-07-03 20:56:06
  • Python如何把不同类型数据的json序列化

    2021-06-01 22:52:16
  • python自动化办公操作PPT的实现

    2023-06-14 03:43:47
  • asp.net中不能在DropDownList中选择多个项 原因分析及解决方法

    2023-07-23 22:15:27
  • 浅析is_writable的php实现

    2023-09-09 01:41:05
  • python二分法查找算法实现方法【递归与非递归】

    2023-04-17 08:13:47
  • Python入门_学会创建并调用函数的方法

    2023-10-14 17:12:22
  • 详解Python进阶之切片的误区与高级用法

    2022-09-18 04:03:12
  • 分享一下Python 开发者节省时间的10个方法

    2023-02-14 21:57:33
  • 解决python-redis-lock分布式锁的问题

    2023-05-23 18:57:49
  • 在python3.64中安装pyinstaller库的方法步骤

    2022-08-12 10:27:05
  • python正则表达式常见的知识点汇总

    2023-10-02 18:56:21
  • Python 实现将某一列设置为str类型

    2022-07-27 03:20:12
  • 用Python实现服务器中只重载被修改的进程的方法

    2022-06-21 05:11:38
  • asp之家 网络编程 m.aspxhome.com