栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

评估不适用于多行字符串

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

评估不适用于多行字符串

eval
只能评估Python 表达式
,不能评估语句。函数定义是语句,而不是表达式。

使用

exec
执行Python语句。

请参阅“ 顶层组件”
文档
,该文档在
文件输入

表达式输入 之间进行区分(其中包括):

file_input ::=  (newline | statement)*

在以下情况下使用此语法:

[…]

  • 解析传递给该
    exec
    语句的字符串时;

[…]的字符串参数

eval()
必须具有以下形式:

eval_input ::=  expression_list newline*

千万 不要 用这个来执行不可信的用户提供的文本。

eval()
并且
exec
无法防范恶意用户,如果您使用了恶意用户,他们可以并且
接管网络进程。

实际上,除了在扔掉所有服务都已牢固关闭的一次性虚拟机中运行代码之外,没有任何“安全”的方法可以做到这一点。运行新的虚拟机以获取新代码,完成后或超时后丢弃整个VM。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/376766.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号