Python中的Lua语言解析器。

我正在研究在 web 项目中使用 Lua。我似乎找不到任何直接执行 Lua 代码的纯 python 解析器。

有人知道如何做吗?

Joe

原文链接 https://stackoverflow.com/questions/2767854

点赞
stackoverflow用户81179
stackoverflow用户81179

有一个项目([pylux](http://www.equi4.com/wikis/lua/25)),它在Python中嵌入了Lua。然而,似乎这个项目并不活跃,但还是值得一看的好项目。

2010-05-04 18:17:29
stackoverflow用户1617926
stackoverflow用户1617926

从你的评论中看来,你对于以一种安全的方式执行不受信任的代码很感兴趣。

像你在评论中提到的那样重新定义 python 内置函数,是一种极为糟糕的保护代码的方式。

你需要的是沙盒技术,虽然 python 有相关的解决方案,但我不建议使用。你最好使用 Jython 或者 IronPython,因为 JVM 和 .NET clr 的设计就考虑了沙盒技术的问题。

我个人认为,在大多数情况下,如果你需要执行不受信任的代码,那么你对你的用户的信任程度可能过高或过低。

2010-05-04 18:54:28
stackoverflow用户2658481
stackoverflow用户2658481

从Lua的网站:

Lua是一个快速的语言引擎,占用空间小,您可以轻松地将其嵌入到应用程序中。Lua具有简单且文档良好的API,可与其他语言编写的代码进行强大的集成。使用其他语言编写的库可以轻松扩展Lua。也很容易用Lua扩展其他语言编写的程序。Lua不仅用于扩展C和C ++编写的程序,还用于Java,C#,Smalltalk,Fortran,Ada,Erlang甚至其他脚本语言(例如Perl和Ruby)编写的程序。

@Joe Simpson

查看Lunatic Python,它可能有你想要的。我知道这是一个旧问题,但其他人也可能正在寻找这个答案。这是一个有价值的问题,应该有一个好的答案。

2013-08-06 20:59:23