【问题标题】:How to run dynamic python scripts at runtime?如何在运行时运行动态 python 脚本?
【发布时间】:2012-01-31 08:46:26
【问题描述】:

我正在尝试解决两个方面的问题:

  1. 首先,如何以沙盒模式(可能使用 PyPy 沙盒)将存储在 DB 中的 python 脚本作为 BLOB 运行?
  2. 其次,如何从代码模板生成脚本本身(代码模板在 DB 中保存为 BLOB)并提供所需数据?

对此的任何帮助都会很棒。谢谢。

【问题讨论】:

    标签: python subprocess pypy


    【解决方案1】:
    1. 您可以使用eval()。但要小心安全漏洞!
    2. 请发布您的临时代码。

    【讨论】:

    • 如果我错了,请纠正我,但您不能将脚本传递给 eval() 函数。相反, execfile() 可以但不允许您导入。我已经浏览过这个link,但这里它是从 URL 而不是 BLOB 获取的。
    【解决方案2】:
    compile(source, filename, mode[, flags[, dont_inherit]])
    

    将源代码编译为代码或 AST 对象。代码对象可以由 exec 语句执行或通过调用 eval() 进行评估。 source 可以是字符串或 AST 对象。有关如何使用 AST 对象的信息,请参阅 ast 模块文档。

    【讨论】:

    • @syntesizerpatel 谢谢,会调查的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-24
    • 2020-02-04
    • 2020-10-11
    • 1970-01-01
    • 2018-08-29
    • 2013-02-16
    相关资源
    最近更新 更多