<分区>
有人能想出一个使用 exec 的良好实践示例吗?
如果总有一种更高效、更安全的方法来替代 exec,为什么 python 不反对 exec?
<分区>
有人能想出一个使用 exec 的良好实践示例吗?
如果总有一种更高效、更安全的方法来替代 exec,为什么 python 不反对 exec?
最佳答案
如 other 中所述questions , eval
/exec
被认为是不好的做法,因为它们通常被滥用来执行不需要它们的任务,从而导致潜在的安全问题问题和普遍糟糕的编程。
但是,这些机制有一些有效用途,并且它们公开了其他地方不可用的重要功能 - 在运行时执行任意代码。
例如,假设您想要编写一个可以 self 更新的应用程序。您可以从使用 exec
运行的远程 URL 获取脚本并将您的应用程序更新到最新版本。虽然这样做本身会带来很大的安全隐患,但通过使用数字签名确保流程安全并不难。
您可以在 code
module 中找到另一个常见用途source : 在运行时执行用户输入的代码以进行调试。
关于Python:exec 总是不好的做法吗?如果是,为什么不弃用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21553641/
相关文章:
Python 3 : write method vs. os.write 返回的字节数
python - 多处理池 'apply_async' 似乎只调用一次函数
python - 如何在 Python 中安全地使用 exec()?
python - 如果嵌套在函数中,listcomp 无法访问 exec 调用的代码中定义的局部变量
python - 为什么指定局部变量时 Python 3 exec() 会失败?
Python Pandas Timeseries 如何找到值高于特定值的最大序列
python - 使用 Scopus API 从 Scopus 获取作者的文章(AUTHENTICATION_ERROR)